RabbitMQ C++;客户消费者\u取消\u通知
按照指导原则,我可以为客户端连接设置“consumer\u cancel\u notify”属性,但是当队列被删除时,客户端仍然没有注意到。我猜我可能必须重写某个方法或在某个地方设置回调,但在深入研究源代码之后,我不知道在哪里可以这样做。有人知道我会在哪里听到这个通知吗?好的,下面是我如何让它工作的:RabbitMQ C++;客户消费者\u取消\u通知,rabbitmq,Rabbitmq,按照指导原则,我可以为客户端连接设置“consumer\u cancel\u notify”属性,但是当队列被删除时,客户端仍然没有注意到。我猜我可能必须重写某个方法或在某个地方设置回调,但在深入研究源代码之后,我不知道在哪里可以这样做。有人知道我会在哪里听到这个通知吗?好的,下面是我如何让它工作的: 创建队列(即“声明”队列)时,为“AMQP_取消”消息添加回调 在AMQPWEUE::sendConsumeCommand()中,在代码检查不同*frame.payload.method.id*s
if (frame.payload.method.id == AMQP_BASIC_CANCEL_METHOD){
cout << "AMQP_BASIC_CANCEL_METHOD received" << endl;
if ( events.find(AMQP_CANCEL) != events.end() ) {
(*events[AMQP_CANCEL])(pmessage);
}
continue;
}
if(frame.payload.method.id==AMQP\u BASIC\u CANCEL\u method){
库特