共用方式為


omp_set_dynamic

表示執行階段可以調整後續的平行區域中可用的執行緒數量。

void omp_set_dynamic(
   int val
);

備註

其中,

  • val
    值,指出是否可以由執行階段調整後續的平行區域中可用的執行緒數量。如果不為零,執行階段可以調整執行緒數目,如果是零,執行階段會動態調整執行緒數目。

備註

執行緒數目,將不會超過所設定的值omp_set_num_threadsOMP_NUM_THREADS

使用omp_get_dynamic以顯示目前設定的omp_set_dynamic。

將omp_set_dynamic將會覆寫的設定值OMP_DYNAMIC環境變數。

如需詳細資訊,請參閱 3.1.7 omp_set_dynamic 函式

範例

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

int main() 
{
    omp_set_dynamic(9);
    omp_set_num_threads(4);
    printf_s("%d\n", omp_get_dynamic( ));
    #pragma omp parallel
        #pragma omp master
        {
            printf_s("%d\n", omp_get_dynamic( ));
        }
}
  

請參閱

概念

OpenMP 函式