我知道这违背了使用 Celery 的全部目的,但是是否有一个函数会阻塞直到结果返回?
因此,我可以调用这将阻塞并返回结果,而不是MyTask.delay(some_arg="foo")
我必须四处走动并获取结果吗?actual_result = MyTask.dont_delay(some_arg="foo")
我知道这违背了使用 Celery 的全部目的,但是是否有一个函数会阻塞直到结果返回?
因此,我可以调用这将阻塞并返回结果,而不是MyTask.delay(some_arg="foo")
我必须四处走动并获取结果吗?actual_result = MyTask.dont_delay(some_arg="foo")
AsyncResult.get 阻塞,直到任务准备好,并返回其结果:
http://ask.github.com/celery/reference/celery.result.html#celery.result.AsyncResult.get
result = MyTask.delay(some_arg="foo")
result.get()
MyTask.apply 将按照您的要求进行操作。