0

私はboost::interprocess::message_queueをVC++で使用しています(Microsoft Visual Studio 2005)。デバッグモードでは正常に動作しています。次に、プログラムをリリース モードでコンパイルすると、動作が停止し、「try_send」を呼び出すたびに false が返されます。リリース モードとデバッグ モードで異なる設定が何であるかがわかりません。これにより、キューが機能しなくなります。

4

1 に答える 1

0

私のリリース バージョンは、デバッグ バージョンほど多くのログを記録していないことがわかりました。キューにメッセージを蓄積するスレッドの方が高速です。これは、(メッセージをフラッシュする) 他のスレッドが追いつかないことを意味します。最後に、メッセージ キューがいっぱいの場合。他のスレッドが追いつく時間を得るために、timed_send を使用する必要があります。

于 2010-04-23T13:08:19.450 に答える