下面是我在python中尝试实现的代码片段。我试图从一些其他函数生成目标函数上的新线程。这个新线程在子进程上等待并退出。现在我想在请求进入时终止该线程。这也应该杀死它正在执行的相应子进程。
Author
答案 0 :(得分:1)
您的实际用例有一个非常简单的解决方案:使用subprocess.Popen
生成外部进程。然后,从Python监视和控制该过程。
p = suprocess.Popen(...)
# ... some time later
p.kill()
将是一种方法。
不需要线程。
答案 1 :(得分:0)
我通常让新线程检查全局变量或在Queue中传递的值,然后当它看到关闭线程运行的指示符时:
sys.exit()
它强制线程关闭。
添加了: 您将在要关闭的线程中使用sys.exit() 这对线程模块很有用。
线程模块有一个thread.exit()调用,但看起来你正在使用线程。