python中如何中止一个线程
1个回答
展开全部
简单来说,它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语句执行时就会生效。
不过可以料想,第一种实现方式,整体的执行效率会慢一点。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询