omp_set_dynamic

指示线程的数目可用在后续并行区域可以在运行时调整。

void omp_set_dynamic(
   int val
);

备注

其中,

  • val
    一个值线程数可用在后续并行区域是否可以在运行时调整。如果非零,则运行时会调整线程数,因此,如果零,运行时不会动态调整线程的数量。

备注

线程数不超过 OMP_NUM_THREADS集由 omp_set_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功能