Redis 芹菜:取消后如何刷新计划任务列表?
我用下面的代码撤销了所有任务Redis 芹菜:取消后如何刷新计划任务列表?,redis,scheduled-tasks,celery,Redis,Scheduled Tasks,Celery,我用下面的代码撤销了所有任务 from celery.task.control import inspect from celery.task.control import revoke i = inspect() queues = i.scheduled() keys = queues.keys() all_tasks = [] tasks = [] if len(keys) > 0: print keys[0] all_tasks = queues[keys[0]]
from celery.task.control import inspect
from celery.task.control import revoke
i = inspect()
queues = i.scheduled()
keys = queues.keys()
all_tasks = []
tasks = []
if len(keys) > 0:
print keys[0]
all_tasks = queues[keys[0]]
for task in all_tasks:
revoke(task['request']['id'], terminate=True)
但是inspect.scheduled在我撤销所有任务之前返回相同的任务。
如何获取除已撤销外的任务列表?每个异步\u结果对象都有status属性,该属性显示任务的状态。因此,如果你有一个所有任务的列表,你可以这样做 或者最好使用这样的列表
unrevoked_tasks = [task for task in all_tasks if task.status != 'REVOKED']
unrevoked_tasks = [task for task in all_tasks if task.status != 'REVOKED']