Przykłady A.23 dyrektywy zamówione
Jest możliwe sekcje zamówione z for z ordered klauzuli.Pierwszy przykład jest niezgodnych, ponieważ interfejs API określa następujące czynności:
"Iteracji pętli z for konstrukcja nie może wykonać takie same ordered dyrektywa więcej niż jeden raz, a nie może wykonać więcej niż jeden ordered dyrektywy." (Zobacz sekcji 2.6.6 na stronie 22)
W tym przykładzie niezgodnych iteracji wszystkich wykonanie 2 zamówione sekcje:
#pragma omp for ordered
for (i=0; i<n; i++)
{
...
#pragma omp ordered
{ ... }
...
#pragma omp ordered
{ ... }
...
}
Ilustruje poniższy przykład zgodny z for z więcej niż jedną uporządkowane sekcji:
#pragma omp for ordered
for (i=0; i<n; i++)
{
...
if (i <= 10)
{
...
#pragma omp ordered
{ ... }
}
...
(i > 10)
{
...
#pragma omp ordered
{ ... }
}
...
}