首页 > 解决方案 > 如何以主线程中的线程结束?

问题描述

我正在网上寻找这个问题,但我找不到任何直接解决问题的方法我正在尝试以下

class Test(Thread):
    def __init__(self):
        Thread.__init__(self)

    def run(self):
        for i in range(3):
            time.sleep(1)
            print(i)


def main():
    test = Test()
    test.start()
    del test
    time.sleep(5)
    print('end')

main()

停止线程的唯一方法是在代码结束时从 run 方法开始,但我找不到任何结束线程的方法。

标签: pythonmultithreading

解决方案


你不能。您所能做的就是很好地询问它(通过实现某种线程间通信,例如 threading.Queue 对象,然后让您的线程检查它的指令)并希望最好。


推荐阅读