parallel
定义并行区域,是将由多个线程并行执行。
#pragma omp parallel [clauses]
{
code_block
}
备注
其中,
- clause(可选)
零或多个子句。 为 并行支持子句的列表参见 " 备注 " 节。
备注
并行 指令支持以下 OpenMP 子句:
并行 也可以用于 sections (OpenMP) 和 for (OpenMP) 指令。
有关更多信息,请参见 2.3 parallel 构造。
示例
下面的示例演示如何设置线程的数量和定义并行区域。 默认情况下,线程的数量与逻辑处理器数相等计算机上的。 例如,因此,如果您具有已启用 hyperthreading 的实际处理器的计算机,则会有两个逻辑处理器,因此,因此,两个线程。
// omp_parallel.cpp
// compile with: /openmp
#include <stdio.h>
#include <omp.h>
int main() {
#pragma omp parallel num_threads(4)
{
int i = omp_get_thread_num();
printf_s("Hello from thread %d\n", i);
}
}
注释
请注意输出顺序在不同的计算机可能会有所不同。