繁体   English   中英

如何从芹菜任务队列中删除任务?

[英]How to delete tasks from celery task queue?

任务结束后,如何删除队列中的所有任务?

我想要这样的东西( 在celery / rabbitmq中删除所有待处理的任务 ),但是对于celery 3.0。

谢谢

编辑:

从celery文档中: http : //docs.celeryproject.org/en/latest/faq.html#how-do-i-purge-all-waiting-tasks

我的代码如下:

从芹菜导入current_app作为芹菜

@task
def task_a():
    celery.control.purge()

我期望,如果我发布了5个任务,则只有第一个可以运行。 不知何故,我不会那么做。

谢谢

这些任务可能已经被工人预取了。 为了找到答案,请尝试运行比通过预取乘数乘法的活动工作程序更多的任务(请参阅下文),并检查celery.control.purge()返回的结果是什么。 您可以使用配置参数CELERYD_PREFETCH_MULTIPLIERCELERY_ACKS_LATE控制预取任务的CELERY_ACKS_LATE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM