
多线程调用amqp-cpp接收和发送消息报错原因分析(rabbitmq接收的消息状态从“Ready”变为“Unacked”,突然又变为“Ready”,消息回退)
消费者从rabbitmq消费消息,消息状态从“Ready”变为“Unacked”,然后多线程处理并多线程调用amqp-cpp发送消息,中间处理过程中,rabbitmq消息状态从“Unacked”突然又变为“Ready”,出现消息回退。方法1:心跳设置为0,即设置connect为长连接;多线程发送时,加入延时,目的是消息发送成功,再发下一条,避免并发;方法2:心跳设置为0,即设置connect为长连接;消费者连接状态从“running”突然变为“closed”。1.连接断开,导致消息回退;












