gpt4 book ai didi

python - celery 如何终止并重新启动任务

转载 作者:太空宇宙 更新时间:2023-11-03 18:49:51 32 4
gpt4 key购买 nike

我想用 celery 来做这样的事情:1.我发送消息启动任务,任务正在启动2.如果任务中某些条件为真,则任务应终止(取消)并“返回”回消息队列,其他工作人员可以获取并执行该任务。

现在我不知道如何从工作函数终止任务。我试图在这个调用的函数中做类似的事情:

if condition == true:
revoke(current_task.request.id, terminate=True)

在应用程序中,当发送消息时,我试图以这种方式连接信号“task_revoke”:

@task_revoked.connect
def do_something_when_revoke(terminated, signum, expired):
do_something_here...

但这对我来说效果不佳。所以也许你可以帮助我,告诉我我做错了什么,或者也许有什么不同的方法来做这样的事情:)提前致谢

最佳答案

实现这一点的更简单方法可能是在任务本身内部实现该逻辑:

  • 您不必撤销任务,只需不要在其中执行任何操作即可
  • 您的任务只需向队列提交新的、更新的任务

关于python - celery 如何终止并重新启动任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18602120/

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