python中的可杀死线程!
kthread的Python项目详细描述
k线程
python中的可杀死线程!
目的
内置的threading.Thread
类不提供终止正在运行的线程的简单解决方案。kthread.KThread
继承threading.Thread
,并提供名为exit()
、kill()
和terminate()
的方法,这些方法具有相同的用途:如果线程正在运行,则尝试停止线程。
工作原理
kthread利用cpython api在给定线程上引发SystemExit
异常。假设线程未被操作系统调用(例如sleep
、accept
或recv
)阻止,则线程将强制退出。
免责声明
终止线程可能会在程序中引入不稳定或其他不希望的效果。这个软件绝对没有保修。对于您或您的组织在使用本软件时发生的任何损害、损失或费用,Munshi Group概不负责。
安装
要安装此软件包,请运行以下命令:
$ pip install kthread
用法
>>> import time
>>> import kthread
>>> import sys
>>> def func():
>>> try:
>>> while True:
>>> time.sleep(0.2)
>>> finally:
>>> sys.stdout.write("Greetings from Vice City!\n")
>>> sys.stdout.flush()
>>>
>>> t = kthread.KThread(target = func, name = "KillableThread1")
>>> t.start()
>>> t.isAlive()
True
>>> t.terminate()
Greetings from Vice City!
>>> t.isAlive()
False
许可证
麻省理工学院