私はZeroMQ(C++版)を初めてお使いですか?br: PUB/SUB
フォーマルコミュニケーションパターンの原型を使用してプログラムを作成しているときに、問題が残っています。ZeroMQは未解決のメッセージの数をカウントできますか?
プログラム:それは私がPUB
に可能なメッセージな限りを送信すると仮定し、私のプロジェクトは、
です。
これは私がROUTER
ソケットタイプを使用していました。
問題:
レシーバは、メッセージが(アップハイウォーターマークに到達するまで)待ち行列に入れられ、その後、SUB
側に落下始まりなっているため、これに、遅いです。
を探して:
私は私に「優秀キュー内のメッセージの数を」伝える(C++上)ZeroMQからメソッドを、したいです。
検索には多くの回答がありませんでした。
私はこれに関するあらゆる種類のポインタまたはヘルプを探しています。
ZMQはアクターモデルシステムです。これは、送信者がメッセージの配信時期を知る仕組みがないことを意味します。これを必要とする場合は、サブスクライバからのパブリッシャへのメッセージのための別のソケットが必要です。メッセージは「別のメッセージを送信してください」という意味です。 – bazza
@bazza 13、お返事ありがとうございます。私はsend()がDONTWAITフラグで呼び出された場合、Queue Full(メッセージ配信失敗)の場合は-1を返します。同じことをしようとしたが動作していない。それは常にデータのサイズを返します。あなたはこれについて何か考えていますか?キューは満杯だがsend()は適切な値を返しています。 –