首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python线程,杀死线程

Python线程,杀死线程
EN

Stack Overflow用户
提问于 2014-12-24 01:05:34
回答 1查看 1.9K关注 0票数 2

我只希望有一个线程是活动的,下面是算法:

代码语言:javascript
复制
def myfunction(update):
    if threading.activeCount >=1:
        # kill all previous threads
    while true:
        # some execution


while true:
    t = threading.Thread(myfunction, args=([update]))
    t.start()

所以在这里线程在我的函数中处于无限循环,所以在启动新线程之前,我需要关闭前一个线程,请指导我。

EN

回答 1

Stack Overflow用户

发布于 2014-12-24 01:34:51

您不能杀死线程,您的函数必须以某种方式返回。因此,诀窍是以这样一种方式编写您的函数:它知道什么时候停止它所做的事情并返回。当然,这与环境有关。通常情况下,将代码实现为一个具有“close”方法的类,该方法知道要做什么。例如,

  • 如果线程正在等待子进程,关闭可能会杀死子进程。
  • 如果线程执行睡眠,则可以使用事件代替-关闭将设置事件。
  • 如果您的线程正在等待队列,则可能有一个特殊的方法告诉它返回。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27630185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档