INNER CODE UNIT · Rust

generate_sidecar_token

mouseart2025/AI-Reader-V2 · frontend/src-tauri/src/lib.rs:31

fn generate_sidecar_token() -> String {
  let bytes: [u8; 32] = rand::thread_rng().gen();
  bytes.iter().map(|b| format!("{b:02x}")).collect()
}

/// 结束 sidecar 进程。
/// Windows 上 PyInstaller onefile 是 bootloader + 子进程两层结构,只杀 bootloader
/// 会残留孤儿 Python 进程——它持续占用 sidecar exe,导致升级安装时文件无法替换、
/// 新旧版本混装(issue #71 根因)。taskkill /T 把整棵进程树带走;其他平台直接 kill。
fn kill_sidecar(child: tauri_plugin_shell::process::CommandChild) {
  #[cfg(target_os = "windows")]
  {
    let pid = child.pid().to_string();
    let _ = std::process::Command::new("taskkill")
      .args(["/PID", pid.as_str(), "/T", "/F"])
      .output();
  }
  #[cfg(not(target_os = "windows"))]

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…