我需要调用一个函数来执行一些操作。此外,我需要突然停止:我不想温和而干净地停止,因为这是我测试的目的。
假设我想打的电话如下:
class_1.function_1(arg_1=True)
首先,我不能使用multiprocessing.Process
(我尝试过(,因为出于某种原因,这不允许我正确调用class_1
的其他函数。
所以,以下是我所做的:
thread = threading.Thread(target=class_1.function_1, args=(True,))
跑步是一种魅力,但我有一个问题:我如何才能强制停止thread
?仅供参考,我无法编辑function_1
或class_1
。
以下是我尝试过的一些解决方案,但没有成功:
- 调用
_stop()
del thread
如果你有任何想法,我很感兴趣,即使没有线索。
谢谢!
您可以使用python-worker
链接
from worker import worker
@worker
def my_function():
...
my_worker = my_function()
## put some code
my_worker.abort()
my_function
将自动作为线程运行,my_worker.abort()
将立即停止