当将芹菜与Flask应用程序集成时,我有一个需要在任务完成时回调到烧瓶的长期任务
@celery_app.task(bind=True)
def doSth(self):
rv = long_time_job()
return rv
@task_success.connect(sender=doSth)
def on_add_success(sender, result, **kwargs):
#tell flask that a task has been done
pass
但我不知道
答案 0 :(得分:1)
芹菜任务是通过工作人员从Flask服务器独立运行的,它们是与消息代理(rabbitmq?)通信的两个不同进程。因此,当任务结束时,该回调函数应该考虑前者,两个不同的过程。
我在这里给你两个解决方案: