Condividi tramite


singolo

Consente di specificare che una sezione di codice deve essere eseguito in un unico thread, non necessariamente il thread master.

#pragma omp single [clauses] 
{
   code_block 
}

Parametri

  • clause (facoltativo)
    zero o più clausole.Vedere la sezione relativa alle osservazioni per un elenco delle clausole supportate da scegliere.

Note

singolo la direttiva supporta le clausole seguenti di OpenMP:

master la direttiva consente di specificare che una sezione di codice deve essere eseguito solo sul thread master.

Per ulteriori informazioni, vedere singolo costrutto 2.4.3.

Esempio

// 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");
    }
}
  

Vedere anche

Riferimenti

Direttive e di OpenMP