2016-10-10 4 views
1

C++로 Qpid 양성자 클라이언트를 구현 중입니다.qpid 양성자 on_sendable 한 번만 호출

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로 전화를 걸어 돌아 간다.

어떤 이유가있을 수 있습니까?

감사합니다.

답변

1

독자가이 질문에 대한 답을 찾았지만 발신자를 열어 본 다음 on_sendable을 이해하면 내가 양성자를 통해 메시지를 보낸 후에 매번 호출됩니다. 메시지를 보내지 않으면 on_sendable은 한 번만 호출됩니다.