0
我需要使每個線程靜態t
,我該怎麼做?我試過這個,但是t
對每個線程都不是靜態的。使用openmp製作一個變量靜態私有的每個線程
#pragma omp Parallel
{
traceRays();
}
...
...
void traceRays()
{
static float t = 1;
}
我需要使每個線程靜態t
,我該怎麼做?我試過這個,但是t
對每個線程都不是靜態的。使用openmp製作一個變量靜態私有的每個線程
#pragma omp Parallel
{
traceRays();
}
...
...
void traceRays()
{
static float t = 1;
}
如果靜態變量不是在並行區域聲明,那麼每當你嘗試在並行區域使用來定義:#omp平行私人(T)
您可以通過只是讓t
做threadprivate:
void traceRays()
{
static float t = 1;
#pragma omp threadprivate(t)
}