A.26 Использование директивы threadprivate
Следующие примеры демонстрируют использование threadprivate директива (Раздел 2.7.1 на странице 23) чтобы каждый поток отдельных счетчиков.
Пример 1.
int counter = 0;
#pragma omp threadprivate(counter)
int sub()
{
counter++;
return(counter);
}
Пример 2.
int sub()
{
static int counter = 0;
#pragma omp threadprivate(counter)
counter++;
return(counter);
}