2015-06-09 9 views
1

Я должен сделать проект для университетского курса я везу, и я застрял, потому что я не могу найти разъяснения по простому вопросу:ActiveMQ: как подписаться/отписаться от недлительного подписки

Как я правильно подписаться и отказаться от подписки на тему как ненадежного абонента? Это звучит достаточно просто, но в то время как для прочного есть метод отмены подписки, я просто не знаю, что использовать для недолговечного.

Что я хочу сделать, так это быть в состоянии подписать, удалить и отправить любую тему по своему желанию. Я нашел сообщение о том, что вы должны использовать consumer.close(); отказаться от подписки, но тогда я не знаю, как переписывать. consumer.start(); не признается в качестве команды (потребитель является экземпляром класса MessageConsumer).

отписаться = потребитель. Close(); //правильно?

resubscribe после отказа от подписки = потребитель. ??? Или мне нужно создавать нового потребителя каждый раз, когда я возвращаю подписку?

язык программирования: Java

ответ

1

Для недлительного подписки, вам просто нужно сделать:

consumer.close() 

Вот что говорит here:

1

Для недлительной темы подписки нет такой вещи, как повторно подписаться. Вы либо подписаны на мероприятие, либо нет. Подписывается, что вы создаете потребителя, который будет получать сообщения, отправленные в тему, пока потребитель активен, чтобы удалить эту подписку, которую вы закрываете. Если вы затем решите, что хотите подписаться и слушать в сообщениях темы, вы создаете нового потребителя, который является совершенно новой подпиской, которая будет получать снова только сообщения, отправленные в то время, когда этот абонент активен.

+0

Спасибо. Это небольшое недоразумение вызвало у меня много ненужной работы. Если бы только формулировка проекта не была настолько неоднозначной (казалось, предполагала, что есть такая вещь, как пересылка), или профессор был бы в малейшем сотрудничестве. Ну что ж. Вернуться к работе. И еще раз спасибо. – user2696330

 Смежные вопросы

  • Нет связанных вопросов^_^