如何检查未注册任务的状态



我的应用程序A在应用程序B中调用一个芹菜任务longtask。但是,longtask在B中注册,但没有在A中注册,所以A使用send_task调用它。我希望a中有一个机制定期检查longtask是否完成。我该怎么做?

send_task返回一个包含任务id的AsyncResult。您可以使用此id定期检查longtask的结果。


result = my_app.send_task('longtask', kwargs={})
task_id = result.id
# anywhere else in your code you can reuse the 
# task_id to check the status
from celery.result import AsyncResult
import time
done = False
while not done:
result = AsyncResult(task_id)
current_status = result.status
if current_status == 'SUCCESS':
print('yay! we are done')
done = True
time.sleep(10)

相关内容

  • 没有找到相关文章

最新更新