Partager via


master

Spécifie que seul le principal threadshould exécutent une section du programme.

#pragma omp master
{
   code_block
}

Notes

La directive de page maître ne prend en charge aucune clauses OpenMP.

La directive de single vous permet de spécifier qu'une section de code doit être exécutée sur un thread unique, pas nécessairement le thread principal.

Pour plus d'informations, consultez 2.6.1 Construction master.

Exemple

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

int main( ) 
{
    int a[5], i;

    #pragma omp parallel
    {
        // Perform some computation.
        #pragma omp for
        for (i = 0; i < 5; i++)
            a[i] = i * i;

        // Print intermediate results.
        #pragma omp master
            for (i = 0; i < 5; i++)
                printf_s("a[%d] = %d\n", i, a[i]);
      
        // Wait.
        #pragma omp barrier

        // Continue with the computation.
        #pragma omp for
        for (i = 0; i < 5; i++)
            a[i] += i;
    }
}
  

Voir aussi

Référence

Directives OpenMP