gpt4 book ai didi

python - 使用 djcelery 时 Revoke、Terminate 和 Kill 有什么区别?

转载 作者:行者123 更新时间:2023-12-01 04:58:53 26 4
gpt4 key购买 nike

我正在使用 djcelery 和 django 的管理站点。如果我想停止一个已经启动的 djcelery 任务,我应该使用 revoke、terminate 还是 Kill,有什么区别?

最佳答案

您应该使用terminate来终止已经启动的任务。

撤销:

>>> from celery.task.control import revoke
>>> revoke(task_id)

当工作线程收到撤销请求时,它将跳过执行该任务,但不会终止已经执行的任务。

终止:

>>> from celery.task.control import revoke
>>> revoke(task_id, terminate=True)

如果设置了终止,处理任务的工作子进程将被终止。发送的默认信号是 TERM。终止任务也会撤销它。

杀死:

这与上面两个不同。 KILL 用于杀死 worker

ps auxww | grep 'celery worker' | awk '{print $2}' | xargs kill -9

关于python - 使用 djcelery 时 Revoke、Terminate 和 Kill 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26751155/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com