@@ -149,8 +149,12 @@ def cleanup():
149149 logger .info (f" Camoufox 进程组 (PID: { pid } ) 未找到,尝试直接终止进程..." )
150150 camoufox_proc .terminate ()
151151 else :
152- subprocess .call (['taskkill' , '/F' , '/T' , '/PID' , str (pid )])
153- logger .info (f"已使用 taskkill 杀死了进程 { pid } 及其子进程。" )
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