Celery任务列表执行

创建计划任务:

复制代码
from celery import Celery
import time

my_task=Celery("task",broker="redis://:123456@127.0.0.1:6379",backend="redis://:123456@127.0.0.1:6379")

@my_task.task
def my_func1():
    time.sleep(10)
    return "任务1"

@my_task.task
def my_func2():
    return "任务2"


@my_task.task
def my_func3():
    return "任务"
复制代码

调用方法执行指定的任务:

from s1 import my_func1

res=my_func1.delay()
print(res)

获取返回值中运行计划的ID

判断计划是否执行完成:

复制代码
from celery.result import AsyncResult
from s1 import my_task

async_task=AsyncResult(id="48029f4f-769e-438b-ac97-e89cc0bb1157",app=my_task)
# result=async_task.get()

if async_task.successful():
    result=async_task.get()
    print(result+"OK!")
else:
    print("任务还未执行完成!")
复制代码

 启动celery在命令行执行: Celery worker -A s1 -l INFO -P eventlet -c 6

-A:指定要执行的目录

-l: 指定要使用的打印日志级别

-p:指定使用eventlet插件 让高版本celery支持window平台

-c:指定可执行的计划数量

posted @   青红*皂了个白  阅读(1325)  评论(1编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示