Partager via


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.

#pragma omp single [clauses] 
{
   code_block  
}

Paramètres

  • clause (facultatif)
    zéro clauses ou plus. Consultez la section Notes pour une liste des clauses prises en charge par unique.

Notes

La directive d' unique prend en charge les clauses suivantes OpenMP :

La directive de master vous permet de spécifier qu'une section de code doit être exécutée uniquement sur le thread principal.

Pour plus d'informations, consultez 2.4.3 Construction simple.

Exemple

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

int main() {
   #pragma omp parallel num_threads(2)
   {
      #pragma omp single
      // Only a single thread can read the input.
      printf_s("read input\n");
      
      // Multiple threads in the team compute the results.
      printf_s("compute results\n");

      #pragma omp single
      // Only a single thread can write the output.
      printf_s("write output\n");
    }
}
  

Voir aussi

Référence

Directives OpenMP