芹菜,叫延时倒计时

2024-05-23 18:59:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我在试着理解芹菜是如何工作的

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


Tags: 文件djangopy应用程序defaulttaskmytasks
1条回答
网友
1楼 · 发布于 2024-05-23 18:59:22

来自basic part of celery Calling documentation

delay(*args, **kwargs)

Shortcut to send a task message, but doesn’t support execution options.

So delay is clearly convenient, but if you want to set additional execution options you have to use apply_async.

由于文档状态delay不能与其他选项一起使用,因此您应该将调用转换为apply_async

如果要添加执行选项,文档建议您使用签名。e、 克:

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

相关问题 更多 >