3

マルチスレッド コードの OpenMP に関する質問:

すべてのグローバル変数はスレッドによって共有されていますか? 特定のグローバル変数をマスタースレッドに対してプライベートにするにはどうすればよいですか?

ありがとう

PS: C コードです。

4

1 に答える 1

0

正しく思い出せば

#pragma omp threadprivate

グローバル変数は少し注意が必要です。初期化する必要がある場合は、copyfirstディレクティブを使用する必要があります(これは正しい名前だと思います)。また、threadprivate変数は重大なペナルティを伴う可能性があり、一部の実装では、変数アクセスが関数呼び出しになります。

于 2010-01-20T17:58:02.333 に答える