Partager via


formulaire de base

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 unique 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 Principal élément 2.6.1.

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 et OpenMP