65
{
n = 3;
}
}
printf("Значение n на нити %d: %d\n", omp_get_thread_num(), n);
}
printf("Значение n в последовательной области: %d\n", n);
return 0;
}
В
данном примере опция lastprivate используется вместе с
директивой sections. Переменная n объявлена как
lastprivate переменная.
Три нити,
выполняющие секции section, присваивают своей локальной
копии n разные значения. По выходе из области
sections значение n из
последней секции присваивается локальным копиям во всех нитях,
поэтому все нити напечатают число 3. Это же значение сохранится для
переменной n и в последовательной области.
Достарыңызбен бөлісу: