gpt4 book ai didi

python - celery - 完成任务但从不返回结果

转载 作者:太空狗 更新时间:2023-10-30 00:02:45 24 4
gpt4 key购买 nike

我刚刚安装了 Celery 并尝试按照教程进行操作:

我有一个名为 tasks.py 的文件,其中包含以下代码:

from celery import Celery

app = Celery('tasks', backend='amqp', broker='amqp://')

@app.task
def add(x, y):
return x + y

我安装了 RabitMQ(我没有使用它进行配置,因为教程没有提到任何此类内容)。

我按如下方式运行 celery 工作服务器:

celery -A tasks worker --loglevel=info

它似乎正常启动(这里是输出:http://i.imgur.com/qnoNCzJ.png)

然后我运行一个包含以下内容的脚本:

from tasks import add
from time import sleep

result = add.delay(2,2)

while not result.ready():
sleep(10)

当我检查 result.ready() 时,我总是得到 False(所以上面的 while 循环永远运行)。然而,在 Celery 日志上,一切看起来都很好:

[2014-10-30 00:58:46,673: INFO/MainProcess] Received task: tasks.add[2bc4ceba-1319-49ce-962d-1ed0a424a2ce]
[2014-10-30 00:58:46,674: INFO/MainProcess] Task tasks.add[2bc4ceba-1319-49ce-962d-1ed0a424a2ce] succeeded in 0.000999927520752s: 4

因此任务被接收并成功。然而,result.ready() 仍然是 False。关于为什么会这样的任何见解?我在 Windows 7 上,正在使用 RabbitMQ。提前致谢。

最佳答案

应该可以解决你的问题

ignore_result=False

关于python - celery - 完成任务但从不返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26645450/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com