問題タブ [happens-before]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - アトミックな取得はミューテックス ロックの解放と同期しますか?
unordered_map
文字列キーとバリアント値を使用して、いくつかの設定を格納するオブジェクトがあります。私のライブラリは複数のスレッドから使用される可能性があり、読み取りが書き込みを大幅に上回る可能性が非常に高いため、「get」操作がロックフリーで「put」操作がクリティカルなコピーオンライト実装について考えました。セクション、例のように:
取得/解放の同期がポインター値だけでなく、ポイント先のデータにも影響を与える限り、設計が機能することはかなり確信しています。ただし、私の質問は次のとおりです。
- これが機能するには、ロック内のアトミック ストアが必要ですか?
- それとも、アトミックな取得は、「解放」操作であるミューテックスのロック解除と同期しますか?