阻止Celery的延迟版本?

时间:2012-04-14 23:04:36

标签: celery django-celery

我知道这会破坏使用Celery的全部目的,但是有一个函数会阻塞直到结果返回吗?

因此,我必须调用MyTask.delay(some_arg="foo")来阻止并返回结果,而不是actual_result = MyTask.dont_delay(some_arg="foo")我需要四处寻找结果吗?

2 个答案:

答案 0 :(得分:4)

AsyncResult.get阻塞,直到任务准备就绪,并返回其结果:

http://ask.github.com/celery/reference/celery.result.html#celery.result.AsyncResult.get

result = MyTask.delay(some_arg="foo")
result.get()

答案 1 :(得分:1)

MyTask.apply会做你要求的。