2015-06-09 71 views
1

退訂我必須爲我修大學課程做一個項目,我堅持,因爲我不能在一個簡單的問題找到澄清:的ActiveMQ:如何訂閱/非持久性訂閱

如何正確訂閱和取消訂閱作爲非持久訂閱者的主題?這聽起來很簡單,但雖然耐用有一個取消訂閱方法,但我不知道如何使用非耐用。

我想要做的是能夠隨意分配,取消訂閱和重新訂閱任何主題。我發現一篇文章說你應該使用consumer.close();取消訂閱,但後來我不知道如何重新訂閱。 consumer.start();不被識別爲命令(消費者是類MessageConsumer的一個實例)。

so unsubscribe = consumer.close(); //對?

取消訂閱=消費後重新訂閱。??? 或者我需要在每次重新訂閱時創建新的消費者?

編程語言:Java的

回答

1

對於非長期訂閱,你只需要做一個:

consumer.close() 

這就是是說here

1

對於非持久主題訂閱有沒有這樣的事,作爲一個重新訂閱。你要麼是活動訂閱,要麼你不是。訂閱你創建一個消費者,當消費者處於活動狀態時,他們將接收發送到主題的消息,以消除關閉消費者的訂閱。如果您決定要訂閱和收聽主題消息,則可以創建一個新的消費者,這是一個全新的訂閱,只會再次接收該訂閱者處於活動狀態時發送的消息。

+0

感謝。這個小小的誤解導致了我很多不必要的工作。如果只有項目的措辭沒有那麼模糊(似乎表明有重新訂閱這樣的事情),或者教授會絲毫不合作。好吧。回去工作。再次感謝。 – user2696330