タグ付けされた質問 「concurrent-vector」

1
他のスレッドでそのconcurrent_vectorを反復しながら、concurrency :: concurrent_vector :: push_backを呼び出すことは、同時実行安全ですか?
push_back、begin、endはhttps://docs.microsoft.com/en-us/cpp/parallel/concrt/reference/concurrent-vector-class?view=vs-2019#push_backでコンカレントセーフとして説明されてい ます ただし、以下のコードはアサートしています。要素が追加されたが、まだ初期化されていないためと考えられます。 struct MyData { explicit MyData() { memset(arr, 0xA5, sizeof arr); } std::uint8_t arr[1024]; }; struct MyVec { concurrency::concurrent_vector<MyData> v; }; auto vector_pushback(MyVec &vec) -> void { vec.v.push_back(MyData{}); } auto vector_loop(MyVec &vec) -> void { MyData myData; for (auto it = vec.v.begin(); it != vec.v.end(); ++it) { auto …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.