1
Czy wywoływanie współbieżności :: concurrent_vector :: push_back jest bezpieczne podczas iteracji po tym współbieżnym wektorze w innym wątku?
push_back , zaczynają , koniec opisane są jako równoczesne sejf w https://docs.microsoft.com/en-us/cpp/parallel/concrt/reference/concurrent-vector-class?view=vs-2019#push_back Jednak poniższy kod jest twierdzący. Prawdopodobnie dlatego, że element został dodany, ale jeszcze nie zainicjowany. 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) …