qpid proton on_sendable вызывается только один раз

Я реализую протонный клиент Qpid с C ++.

Версия Qpid — 0.12.2.

Я запускаю контейнер по умолчанию:

proton::container(myHandler).run();

MyHandler выглядит так:

void MyHandler::on_start(proton::event& e) {
proton::connection conn = e.container().connect(url);
_senderEvent            = conn.open_sender(EVENT_RECEPTION);
}

void MyHandler::on_message(proton::event &e) {
}

void MyHandler::on_link_open(proton::event &e) {
std::cout << "LINK OPEN " << std::endl;
}

void MyHandler::on_connection_open(proton::event &e) {
}

void MyHandler::on_sendable(proton::event &e) {
std::cout << "on sendable! " << std::endl;
}

Все работает отлично! Он соединяется, создает отправителя и т. Д.

Но, on_sendable называется только один раз! Хотя я не закрываю его, он никогда не возвращается к звонку on_sendable,

Что может быть причиной?

Благодарю.

1

Решение

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

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]