Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
private clausola (parte 2.7.2.1 nella pagina 25) in parallelo un'area è solo in effetti per l'ambito lessicale dell'area, non per l'ambito dinamico dell'area.Pertanto, nell'esempio che segue, qualsiasi utilizzo della variabile in all'interno di for ciclo nella routine f fa riferimento a una copia privata di in, mentre un utilizzo della routine g si riferisce a globale in.
int a;
void f(int n)
{
a = 0;
#pragma omp parallel for private(a)
for (int i=1; i<n; i++)
{
a = i;
g(i, n);
d(a); // Private copy of "a"
...
}
...
void g(int k, int n)
{
h(k,a); // The global "a", not the private "a" in f
}