第15节:RabbitMQ发送方确认-异步监听确认模式

Confirm的三种实现方式:

 

方式三:channel.addConfirmListener()异步监听发送方确认模式

channel接口方法:

       1.channel.confirmSelect();   开启发送方确认模式

       2.channel.addConfirmListener();  消息确认以后的回调方法

 

 

真实案例使用:记得先启动监听

 

参数1 为被确认的消息编号,从1开始自动递增用于标记当前是第几个消息

参数2 为当前消息是否同时确认多个

注意如果参数2为true则表示本次同时确认了多条,消息等于当前参数1(消息编号)的所有消息全部被确认,如果为false 则表示只确认了当前编号的消息

 

        channel.addConfirmListener(new ConfirmListener() {

            public void handleAck(long l, boolean b) throws IOException {

                   System.out.println("已确认消息,标识:"+l+" ---多个消息:"+b);

            }

参数1 为没有被确认的消息编号,从1开始自动递增用于标记当前是第几个消息

参数2 为当前消息是否同时没有确认多个

注意:如果参数2 true,则表示小于当前编号的所有消息都可能没发送成功,需要补发

      如果参数2 false,则表示当前编号的消息没有确认成功

            public void handleNack(long l, boolean b) throws IOException {

                     System.out.println("未确认消息,标识:" + l+"----"+b);

            }

        });

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值