我有一个代码,其中我有两种类型的线程。从第二个线程衍生出3个线程。我想知道是否有一个我可以调用的函数,它将终止第二种类型的三个派生线程,但仍然保持第一个线程运行。
发布于 2012-08-27 20:46:14
一种常见的解决方案是有一个全局变量,线程检查它们是否应该终止。
编辑:是一个这样做的例子:
class MyThread(Thread):
def __init__(self):
self.keep_running = True
def run(self):
while self.keep_running:
# Do stuff
my_thread = MyThread()
my_thread.start()
# Do some other stuff
my_thread.keep_running = False
my_thread.join()发布于 2012-08-27 20:59:43
您可以为每种类型的线程保留一个线程池,然后相应地终止它们。例如,您可以全局地将它们保存在Queue.Queue中,然后根据需要对它们执行.stop()操作。
编辑//您可以使用.join()将每个要停止的子线程连接到其父线程
https://stackoverflow.com/questions/12142220
复制相似问题