小编cbd*_*cbd的帖子

OpenMP和STL向量

我有一些代码,我想以下列方式使用OpenMP:

std::vector<int> v(1000);
# pragma omp parallel for
for (int i = 0; i < 1000; ++i) {
    v[i] = i;
}
Run Code Online (Sandbox Code Playgroud)

我已经读过,在多个线程写入单个容器的情况下,STL向量容器不是线程安全的,这意味着我需要在进行任何写入之前锁定向量; 但是,我也被告知上面的写操作在某种程度上是"原子的",所以上面没有竞争条件.有人可以澄清一下吗?

c++ multithreading stl vector openmp

16
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

multithreading ×1

openmp ×1

stl ×1

vector ×1