需求是: python 主进程做一些工作,另起一个子线程做一些监控,发现系统异常时终止整个进程的工作,并设置进程退出代码。
结果发现子线程调用 sys.exit 居然不会终止进程,虽然文档上面写 sys.exit 只是引发异常,但 threading.Thread 把 SystemExit 捕获并忽略了太奇怪了吧?
os._exit 不执行各种清理操作,除了 os._exit 还有其他优雅的终止进程的办法吗?
1
ryd994 2015-09-10 19:44:20 +08:00 via Android 1
子线程退出了啊,主线程没退出啊
你这样:开线程的时候指定 deamon_thread=True 想退出的时候调用 exit_main |