次の方法で共有


sections (OpenMP)

すべてのスレッド間で分割するコード セクションを識別します。

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

解説

指定項目

  • clause (省略可能)
    0 個以上の句。sections によってサポートされている句の一覧については、「解説」を参照してください。

解説

sections ディレクティブには、0 個以上の section ディレクティブを格納できます。

sections ディレクティブは次の OpenMP 句をサポートします。

parallel も指定されている場合は、clause に、parallel ディレクティブまたは sections ディレクティブで使用できる 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());
    }
}

Hello from thread 0
Hello from thread 0

参照

概念

OpenMP ディレクティブ