Freigeben über


single

Hiermit können Sie nicht angeben, dass ein Abschnitt des Codes auf einem einzigen Thread Masterthread, der ausgeführt werden soll.

#pragma omp single [clauses] 
{
   code_block  
}

Parameter

  • clause (optional)
    Null oder mehr Klauseln. Weitere Informationen finden Sie im Abschnitt " Hinweise " für eine Liste von Klauseln, die von Einfachunterstützt werden.

Hinweise

Die Einfach unterstützen die folgenden Direktiven OpenMP-Klauseln:

Die master-Direktive können Sie angeben, dass ein Codeabschnitt nur auf dem Masterthread ausgeführt werden soll.

Weitere Informationen finden Sie unter 2.4.3 single-Konstrukt.

Beispiel

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

Siehe auch

Referenz

OpenMP-Direktiven