vert.x AMQP是否具有出队功能以清除消息?

时间:2019-04-17 07:23:37

标签: java amqp vert.x enqueue

我可以从AmqpReceiver中打印出入队消息,但是如何从队列中出队或清除消息呢?

amqpClient.createReceiver("my-queue",
        done -> {
            if (done.failed()) {
                done.cause().printStackTrace();
                System.out.println("Unable to create receiver");
            } else {
                final AmqpReceiver receiver = done.result();
                receiver.address();
                receiver
                        .exceptionHandler(t -> {
                            t.printStackTrace();
                        })
                        .handler(msg -> {
                            System.out.println("Message: " + msg.bodyAsJsonObject().toString());
                        });

                receiver.connection().close(ar -> {
                });
            }
        }
);

1 个答案:

答案 0 :(得分:0)

默认情况下,接收方将接受并解决该消息,因此,您(如docs中所述)无需执行任何操作,除非您已更改配置以使其不接受并接受。为你安定。如果您希望进行其他处理或控制结算,则可以通过在收到的邮件中致电methods来实现。

顶点质子示例代码here中有一些更详细的解释。