Skip to content

Commit 529abcd

Browse files
authored
Merge pull request #197 from haswysa/main
优化window系统下杀掉子进程功能
2 parents 5cb356e + f268b25 commit 529abcd

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

launch_camoufox.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,12 @@ def cleanup():
149149
logger.info(f" Camoufox 进程组 (PID: {pid}) 未找到,尝试直接终止进程...")
150150
camoufox_proc.terminate()
151151
else:
152-
logger.info(f" 向 Camoufox (PID: {pid}) 发送 SIGTERM 信号...")
153-
camoufox_proc.terminate()
152+
if sys.platform == "win32":
153+
logger.info(f"进程树 (PID: {pid}) 发送终止请求")
154+
subprocess.call(['taskkill', '/T', '/PID', str(pid)])
155+
else:
156+
logger.info(f" 向 Camoufox (PID: {pid}) 发送 SIGTERM 信号...")
157+
camoufox_proc.terminate()
154158
camoufox_proc.wait(timeout=5)
155159
logger.info(f" ✓ Camoufox (PID: {pid}) 已通过 SIGTERM 成功终止。")
156160
except subprocess.TimeoutExpired:
@@ -164,7 +168,11 @@ def cleanup():
164168
logger.info(f" Camoufox 进程组 (PID: {pid}) 在 SIGKILL 时未找到,尝试直接强制终止...")
165169
camoufox_proc.kill()
166170
else:
167-
camoufox_proc.kill()
171+
if sys.platform == "win32":
172+
logger.info(f" 强制杀死 Camoufox 进程树 (PID: {pid})")
173+
subprocess.call(['taskkill', '/F', '/T', '/PID', str(pid)])
174+
else:
175+
camoufox_proc.kill()
168176
try:
169177
camoufox_proc.wait(timeout=2)
170178
logger.info(f" ✓ Camoufox (PID: {pid}) 已通过 SIGKILL 成功终止。")

0 commit comments

Comments
 (0)