スレッド・ローカル・ストレージ

インテル® C++ コンパイラーは、変数定義および変数宣言で使用されるストレージクラスの __thread キーワードをサポートしています。このキーワードで定義され、宣言された変数は、自動で各スレッドにローカルに割り当てられます。

__thread int i;

__thread struct state s;

extern __thread char *p;

Note icon

__thread キーワードは、GNU* 互換性バージョンが 3.3 以上の場合のみ認識されます。スレッド・ローカル・ストレージを有効にするために、-gcc-version=330 コンパイラー・オプションを指定することができます。