名前空間
変種
操作

std::pmr::unsynchronized_pool_resource::do_allocate

From cppreference.com
 
 
メモリ管理ライブラリ
(説明用*)
未初期化メモリのアルゴリズム
(C++17)
(C++17)
(C++17)
制約付き未初期化
メモリアルゴリズム
Cライブラリ

アロケータ
メモリリソース
ガベージコレクションのサポート
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
未初期化ストレージ
(C++20まで*)
(C++20まで*)
明示的な生存期間管理
 
 
virtual void* do_allocate( std::size_t bytes, std::size_t alignment );
(C++17以降)

ストレージを確保します。

bytes バイトのブロックに対して選択されたプールが、内部データ構造から要求を満たすことができない場合、上位のメモリリソースの allocate() を呼び出してメモリを取得します。

要求されたサイズが、最も大きなプールが処理できるサイズよりも大きい場合、上位のメモリリソースの allocate() を呼び出してメモリが確保されます。

[編集] 戻り値

少なくとも bytes バイトのサイズで、指定された alignment にアラインされた(そのようなアラインメントがサポートされている場合)、そうでなければ alignof(std::max_align_t) にアラインされた、確保されたストレージへのポインタ。

[編集] 例外

上位のメモリリソースの allocate() の呼び出しが例外をスローしない限り、何もスローしません。

[編集] 関連項目

メモリを割り当てる
(std::pmr::memory_resource の public メンバー関数) [編集]
[virtual]
メモリを割り当てる
(std::pmr::memory_resource の virtual private メンバ関数)[編集]
English 日本語 中文(简体) 中文(繁體)