ローカル ネットから UDP データを読み取り、そのデータを現在の値テーブル (CVT) に格納するアプリを設計する必要があります。
次に、別のスレッドが来て、CVT から値を読み取り、メッセージを送信し、UDP 経由で送信します。CVT エントリは、float や int などの個々のスカラーで構成されます。
私の質問は、CVT からの更新/読み取りを保護するために、どの程度の相互排除が必要ですか?
別の言い方をすれば、32 ビット int に書き込むスレッドとその int から読み取る別のスレッドがある場合、そのためにミューテックスを使用する必要がありますか?
リーダースレッドが絶対的な最新の値を保存していなくてもかまいません。変更中にその場所を読み取ろうとすることだけが心配です。キーワード「volatile」が Java でこのシナリオに使用されることは知っていますが、C++ では同じことを行いません。