安全性
同じインスタンス上でこれらの操作を同時に呼び出すことは安全ではありません。
| メンバー | 説明 |
|---|---|
| void reserve( size_type n ) |
少なくとも n 要素の予約空間。 スロー: n>max_size() の場合、std::length_error。 アロケーターが例外をスローした場合も、例外をスローすることがあります。 安全性: 例外がスローされると、インスタンスは有効な状態のままになります。 |
| void shrink_to_fit() |
内部表現を簡潔にし、フラグメンテーションを減らします。 注インテル® スレッディング・ビルディング・ブロック (インテル® TBB) 2.1 では、shrink_to_fit メソッドは compact() と呼ばれていました。 C++11 の std::vector::shrink_to_fit() に合わせて名前が変更されました。 |
| void swap( concurrent_vector& x ) |
2 つのベクトルのコンテンツをスワップします。時間が O(1) かかります。 |
| void clear() |
すべての要素を消去します。その後、size()==0 にします。 内部配列は解放されません。 ヒント内部配列を解放するには、clear() の後に shrink_to_fit() を呼び出します。 注インテル® TBB 2.1 およびインテル® TBB 2.1 Update 1 では、内部配列が解放されていましたが、 インテル® TBB 2.1 Update 2 でインテル® TBB 2.0 の動作に戻りました。 std::vector::clear() に似た動作となるように内部配列を解放しません。 |
| ~concurrent_vector() |
すべての要素を消去し、ベクトルを破棄します。 |