ここで、C++ の標準コンテナー (「リスト」や「マップ」など) がスレッドセーフであるかどうかという質問を含む多くの投稿を読みましたが、それらのすべてが一般的ではないと述べています。並列読み取りは問題ないはずですが、並列書き込みまたは並列読み取りと書き込みは問題を引き起こす可能性があります。
今、www.cplusplus.comで、ほとんどの操作中にリストにアクセスしたり変更したりしても安全であることがわかりました。
いくつかの例:
コンテナーにアクセスします (const バージョンも非 const バージョンもコンテナーを変更しません)。マップされた値はアクセスされません。要素への同時アクセスまたは変更は安全です。
コンテナが変更されます。既存の要素に同時にアクセスすることは安全ですが、コンテナー内の範囲を反復することは安全ではありません。
cplusplus.com を誤解していますか、それとも std コンテナーのスレッド セーフについて知っておくべきことは他にありますか?
前もって感謝します!
PS: 私は C++11 ではなく C++03 を求めています