1
hcnhcn012 2017 年 9 月 26 日 via iPhone
最好别人工去关掉线程吧,一定要关的话可以自己写一个 stop()或者用 multiprocessing 用多进程实现任务。
写 stop 的话可以参考 https://stackoverflow.com/questions/323972/is-there-any-way-to-kill-a-thread-in-python |
3
geelaw 2017 年 9 月 26 日 设置一个事件或者变量,告诉那个线程该结束了,然后等这个线程结束。
注意,杀死一个 cmd 进程不等同于杀死创建该进程的线程,后者可能会导致当前进程坏掉。 |
5
afeicool 2017 年 9 月 26 日
Thread.setDaemon(true)
|
6
afeicool 2017 年 9 月 26 日
具体到你的代码就是:
th.setDaemon(True) th.start() |
8
impyf104 2017 年 9 月 26 日 via iPhone
重写 run 和 stop,留个变量 flag
def run: while(flag): Do something def stop: flag = false 或者用 setdaemon |
9
adjclubyb OP @impyf104 嗯,但如果使用 setdaemon 就有个问题,我想结束掉这几个子线程之后我的主线程下面还要继续执行,程序还没结束呢?
|