python2.7版本
1、开启任务:
task_id = tasks.remote_maintenance_task.delay(task_type)
data["task_id"] = task_id.id
其中task_id就是这个任务的id
如果我们想要在它正在执行的时候,停止它的话,需要把task_id记录下来。
2、停止任务
id = task_id["task_id"]
state = AsyncResult(id=str(id), app=main.app).state # 这个是查看当前celery该任务的状态
# 停止任务
celery_control = Control(main.app)
celery_control.revoke(str(id), terminate=True)
revoke是执行停止的命令
3、celery导包
from celery_remote import tasks
from celery.app.control import Control
from celery.result import AsyncResult
4、celery任务状态