#pragma omp parallel for schedule(static)
for (int i = 0; i < 100; i++)
{ count--;}
上面的代码可以吗?
通常情况下,代码不正常。可能存在竞争条件。您可以使用原子omp子句。
#pragma omp parallel for schedule(static)
for (int i = 0; i < 100; i++)
{
#pragma omp atomic update
count--;
}
你可以看看关于原子的规范https://www.openmp.org/spec-html/5.0/openmpsu95.html