A.18 지시문에 중첩됨
다음의 예제 for 지시문의 중첩 (2.9 절 페이지 33) 준수 하는 때문에 내부 및 외부 for 지시문 바인딩할 다른 병렬 영역에:
#pragma omp parallel default(shared)
{
#pragma omp for
for (i=0; i<n; i++)
{
#pragma omp parallel shared(i, n)
{
#pragma omp for
for (j=0; j<n; j++)
work(i, j);
}
}
}
앞의 예제에서는 다음 변형도 호환 됩니다.
#pragma omp parallel default(shared)
{
#pragma omp for
for (i=0; i<n; i++)
work1(i, n);
}
void work1(int i, int n)
{
int j;
#pragma omp parallel default(shared)
{
#pragma omp for
for (j=0; j<n; j++)
work2(i, j);
}
return;
}