Python多线程,终止线程

22 浏览
0 Comments

Python多线程,终止线程

这个问题已经有了答案:

有没有办法杀掉一个线程?

我只想让一个线程处于活动状态,这是算法:

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()

所以在这里,线程在myfunction中进入无限循环,因此在启动新线程之前,我需要关闭上一个线程,请指导我

admin 更改状态以发布 2023年5月21日
0
0 Comments

您无法结束线程,您的函数必须以某种方式返回。然后,关键是以这样的方式编写函数,使其知道何时停止正在进行的操作并返回。当然,这非常依赖上下文。实现代码作为具有“close”方法的类很常见,该方法知道要执行的操作。例如,

  • 如果线程正在等待子进程,则关闭可能会杀死子进程。

  • 如果线程执行睡眠,则可以使用事件 - 然后,关闭将设置该事件。

  • 如果您的线程正在等待队列,则可能有一个特殊的方法告诉它返回。

0