Поделиться через


A.6 Использование предложения lastprivate

Правильные зависит от выполнения иногда значение, более поздней итерации цикла присвоенный переменной. Такие программы должен перечислить все такие переменные в качестве аргументов a lastprivate предложение (Раздел 2.7.2.3 на странице 27) таким образом, что значения переменных будут такими же, как если цикл будет выполняться последовательно.

#pragma omp parallel
{
   #pragma omp for lastprivate(i)
      for (i=0; i<n-1; i++)
         a[i] = b[i] + b[i+1];
}
a[i]=b[i];

В предыдущем примере значение i в конце параллельной области приравняет n–1в последовательном случае.