我试图了解 celery 的工作原理

tasks.py文件的django应用程序中,我创建了一个任务:

@celery.shared_task(default_retry_delay=2 * 60, max_retries=2)
def my_task(param1, param2):
    # There are some operations

我通过使用以下代码来调用此任务:
my_task.delay(param1, param2)

在此my_task内部,有一种情况应再次启动此任务,但延迟一分钟后

我发现有一些用于任务的ETA and countdown,但它们的示例仅适用于apply_async
可以对delay使用某种倒数计时吗?

最佳答案

basic part of celery Calling documentation



由于文档说明delay不能与设置的其他选项一起使用,因此您只需将调用转换为apply_async
如果要添加执行选项,文档建议您使用签名。例如:

my_task.s(arg1, arg2).apply_async(countdown=60)

关于python - celery ,通话延迟,倒数计时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48910214/

10-11 22:03
查看更多