2016-10-10 10 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は一度だけ呼び出されます。私はそれを閉じることはありませんが、それは電話on_sendableに戻るnevers。

どのような理由があることだろうか?

ありがとうございました。

答えて

1

あなた自身がこの質問に対する回答を見つけたかもしれませんが、あなたが送信者を開いた後、そしてあなたが陽子を介してメッセージを送信した後に毎回on_sendableが理解できるものから呼び出されます。あなたがメッセージを送信しない場合、on_sendableは一度呼び出されます。

関連する問題