python线程关闭,Python 如何强制关闭线程

1,Python 如何强制关闭线程# -*- coding: utf-8 -*-import threadingimport threadimport timeclass test(object): def __init__(self): # threading.thread.__init__(self) self._sname = "machao" def process(self): #args是关键字参数,需要加上名字 , 写成args=(self,...
2,Python并发如何取消当前的线程简单来说,它kill的原理是设置一个flag位 , 然后线程在执行下一句python语句检测到这个位被设置了之后,就会自行退出,以达到kill的目的 。另外还有一种更容易理解的flag置位的实现方式:classKillableThread(threading.Thread):def__init__(self):threading.Thread.__init__(self)self.stop = Falsedefrun(self):whilenotself.stop:somefunction()这种方式相比第一种而言,又有一点不足:kill生效的时限 , 最大等于somefunction执行一遍所花的时间 。而第一种方式,在下一句python语句执行时就会生效 。不过可以料想 , 第一种实现方式,整体的执行效率会慢一点 。
3 , python中怎么停止线程停止线程之前需要考虑一些问题:1. 这个线程是不是占用了重要的计算资源,这些资源是不是已经被关闭或者释放了2. 这个线程是不是还起了更多的子线程关于这个问题如果你的英语还不错的话,建议到stackoverlfow这个网站去搜索,里面有一个提问Is there any way to kill a Thread in Python?对于这个问题讲的很透彻,我就不方便把人家的代码拷过来了 。或者你可以在谷歌里搜索这个问题“Is there any way to kill a Thread in Python?” 最上面就是 。你先建立一个queue,把queue当参数给你的mythread,然后mythread不要返回值,而是put在queue里面 。在for i in threads里用queue.get取出来 。queue是thread safe的,可以放心用 。【python线程关闭,Python 如何强制关闭线程】

    推荐阅读