次の方法で共有


omp_get_max_threads

コード内のそのポイントにおいて並列領域が num_threads なしで定義されている場合に、最低限使用できるスレッド数を示す整数を返します。

int omp_get_max_threads( )

解説

詳細については、「3.1.3 omp_get_max_threads 関数」を参照してください。

使用例

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

int main( ) 
{
    omp_set_num_threads(8);
    printf_s("%d\n", omp_get_max_threads( ));
    #pragma omp parallel
        #pragma omp master
        {
            printf_s("%d\n", omp_get_max_threads( ));
        }

    printf_s("%d\n", omp_get_max_threads( ));

    #pragma omp parallel num_threads(3)
        #pragma omp master
        {
            printf_s("%d\n", omp_get_max_threads( ));
        }

    printf_s("%d\n", omp_get_max_threads( ));
}
  

参照

概念

OpenMP の関数