この関数は、チーム内の現在実行中のスレッドの数を戻します。戻り値は、常に、0 から NUM_PARTHDS - 1 になります。NUM_PARTHDS は、チーム内で現在実行中のスレッドの数です。チームのマスター・スレッドは 0 の値を戻します。
直列領域内、逐次化されネストされた並列領域、または並列領域の動的エクステントから omp_get_thread_num を呼び出すと、関数は値 0 を戻します。
この関数は、最も近い並列領域にバインドします。
結果タイプおよび属性
デフォルトの整数
結果値
0 から NUM_PARTHDS - 1 までの、チーム内で現在実行中のスレッドの値。NUM_PARTHDS は、チーム内で現在実行中のスレッドの数です。逐次化されネストされた並列領域、または並列領域の動的エクステントからの omp_get_thread_num 呼び出しは、0 を戻します。
例
USE omp_lib INTEGER NP !$OMP PARALLEL PRIVATE(NP) NP = omp_get_thread_num() CALL WORK(NP) !$OMP MASTER NP = omp_get_thread_num() CALL WORK(NP) !$OMP END MASTER !$OMP END PARALLEL END SUBROUTINE WORK(THD_NUM) INTEGER THD_NUM PRINT *, THD_NUM END