メンバー | 説明 |
---|---|
reference local() | 現在のスレッドに対応する現在の要素がない場合、このメソッドは新しい要素を作成します。イグザンプラーが *this のコンストラクターに提供されている場合、新しい要素はコピー構築されます。提供されていない場合、新しい要素はデフォルト設定で構築されます。以下の「警告」を参照してください。 戻り値: 現在のスレッドに対応する *this の要素への参照。 |
reference local( bool& exists ) | 要素が現在のスレッドに存在していた場合は exists が true に設定され、存在していなかった場合は false に設定されることを除いて、local() に似ています。以下の「警告」を参照してください。 戻り値: スレッドローカル要素への参照。 |
size_type size() const | 戻り値: *this の要素の数。値は、*this が作成された後、または最後に消去された後に local() を呼び出した (個別の) スレッドの数と同じです。以下の「警告」を参照してください。 |
bool empty() const | 戻り値: size()==0。 |
tbb::this_tbb_thread::get_id() が返す OS 固有の値はスレッドを識別するために使用されます。スレッドの寿命を除いて一意であることは保証されません。新しく作成されたスレッドには、すでに破棄されたスレッドと同じ OS 固有の ID が割り当てられます。このため、enumerable_thread_specific の要素数は local() を呼び出した実際の (個別の) スレッド数よりも少ないことがあります。また、スレッドによる最初の参照で enumerable_thread_specific に返された要素は新しく構築されないことがあります。