Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Es ist möglich, mehrere geordnete Abschnitte mit for verfügen, das der ordered-Klausel angegeben wird.Im ersten Beispiel ist inkompatibel, da die API Folgendes angegeben wird:
„Eine Iteration einer Schleife mit einem for Konstrukt darf die gleichen ordered-Direktive nicht mehrmals ausführen, und sie dürfen nicht mehr als eine ordered-Direktive ausführen“. (Siehe 2.6.6 Abschnitt auf Seite 22)
In diesem nicht kompatiblen Beispiel werden alle Iterationen 2 geordnete Abschnitte aus:
#pragma omp for ordered
for (i=0; i<n; i++)
{
...
#pragma omp ordered
{ ... }
...
#pragma omp ordered
{ ... }
...
}
Im Folgenden kompatible Beispiel wird for mit mehr als einem geordneten Abschnitts veranschaulicht:
#pragma omp for ordered
for (i=0; i<n; i++)
{
...
if (i <= 10)
{
...
#pragma omp ordered
{ ... }
}
...
(i > 10)
{
...
#pragma omp ordered
{ ... }
}
...
}