sections (OpenMP)

标识在所有线程中拆分代码部分。

#pragma omp [parallel] sections [clauses]
{
   #pragma omp section
   {
      code_block  
   } 
}

备注

其中,

  • clause(可选)
    零个或多个子句。 为 部分支持子句的列表参见 " 备注 " 节。

备注

部分 指令可以包含零个或多 部分 指令。

部分 指令支持以下 OpenMP 子句:

如果 并行 还指定, clause 可以是 并行部分 指令接受的所有子句,但 nowait

有关更多信息,请参见 2.4.2 sections 构造

示例

// omp_sections.cpp
// compile with: /openmp 
#include <stdio.h>
#include <omp.h>

int main() {
    #pragma omp parallel sections num_threads(4)
    {
        printf_s("Hello from thread %d\n", omp_get_thread_num());
        #pragma omp section
        printf_s("Hello from thread %d\n", omp_get_thread_num());
    }
}
  

请参见

参考

OpenMP 指令