1

我必须为我正在上的一门大学课程做一个项目,但我被困住了,因为我找不到一个简单问题的解释:

作为非持久订阅者,我如何正确订阅和取消订阅主题?听起来很简单,但是对于持久性有一个取消订阅方法,我只是不知道非持久性使用什么。

我想要做的是能够随意订阅、取消订阅和重新订阅任何主题。我发现一个帖子说你应该使用 consumer.close(); 取消订阅,但后来我不知道如何重新订阅。消费者.start(); 不被识别为命令(消费者是 MessageConsumer 类的实例)。

所以取消订阅 = consumer.close(); //正确的?

取消订阅后重新订阅=消费者。???还是每次重新订阅时都需要创建一个新的消费者?

编程语言:Java

4

2 回答 2

1

对于非持久主题订阅,没有重新订阅之类的东西。您要么订阅了活动,要么没有订阅。订阅您创建一个消费者,当消费者处于活动状态时,他们将接收发送到该主题的消息,删除该订阅您关闭消费者。如果您然后决定要订​​阅并收听主题消息,您将创建一个新的消费者,这是一个全新的订阅,它将再次接收仅在该订阅者处于活动状态时发送的消息。

于 2015-06-09T17:30:05.077 回答
1

对于非持久订阅,您只需要执行以下操作:

consumer.close()

这就是这里所说的:

于 2016-09-16T15:30:09.127 回答