如果我想在循环之前使用openmp critical,我应该使用大括号吗?

时间:2017-04-13 12:26:22

标签: c++ openmp

写下来是否足够:

#pragma omp critical
for (...) {
    ...
}

或者我必须写:

#pragma omp critical
{
    for (...) {
        ...
        }
}

1 个答案:

答案 0 :(得分:2)

critical构造的目标是紧随其后的语句。从这个角度来看,for (...) { ... }是一个单一的陈述,因此并非严格要求括号。这也适用于其他结构,例如parallelfor,合并parallel foratomic等。