gpt4 book ai didi

python - rabbitmq 使用 pika 线程

转载 作者:行者123 更新时间:2023-11-28 21:47:49 25 4
gpt4 key购买 nike

我正在尝试使用 rabbitmq 获得一个基本的队列系统,但是当我尝试使用线程时,它似乎只运行 1 个线程。

我的代码:

import pika
import threading

rabbit_url = "amqp://user:pass!@127.0.0.1:5672/%2f"

def start(max_threads):
for i in xrange(max_threads):
t = threading.Thread(target=run)
t.start()
t.join()

def run():
connection = pika.BlockingConnection(pika.URLParameters(rabbit_url))
channel = connection.channel()
channel.basic_consume(callback,
queue='docketq',
no_ack=True)

channel.start_consuming()

def callback(ch, method, properties, body):
do_work(body)

def do_work(body):
print body

最佳答案

t.join() 等待线程完成。在 start() 循环的第一次迭代中,您启动了第一个线程,然后等待它完成,但它永远不会完成,因为 channel.start_consuming() 是一个等待传入消息的无限循环。

关于python - rabbitmq 使用 pika 线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35976547/

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