A.26 Usando a diretiva threadprivate
Os exemplos a seguir demonstram como usar o threadprivate diretiva (seção 2.7.1 na página 23) para dar a cada thread um contador separado.
Exemplo 1:
int counter = 0;
#pragma omp threadprivate(counter)
int sub()
{
counter++;
return(counter);
}
Exemplo 2:
int sub()
{
static int counter = 0;
#pragma omp threadprivate(counter)
counter++;
return(counter);
}