|
Alternate e697dbe9c5997e35395fe158628dd8c5209481da
for Visual Studio 2022 and Windows 11.
|
ヒープメモリに関するAPIを集約したクラス [詳解]
#include <HeapMemory.h>
公開メンバ関数 | |
| APIENTRY | HeapMemory () |
| コンストラクタ | |
| APIENTRY | HeapMemory (const HeapMemory &base) |
| コピーコンストラクタ | |
| APIENTRY | ~HeapMemory () |
| デストラクタ | |
| virtual LPVOID APIENTRY | Allocate (SIZE_T bytes, DWORD dwFlags=MEM_ZERO) |
| メモリの取得 | |
| BOOL APIENTRY | Close () |
| 取得したヒープ領域の解放 | |
| SIZE_T APIENTRY | Compact () const |
| 取得したヒープ領域の整理 | |
| BOOL APIENTRY | Create (SIZE_T initialSize=0, SIZE_T maximumSize=0, DWORD dwOptions=0) |
| ヒープ領域の取得 | |
| virtual BOOL APIENTRY | Free (LPVOID lpvMem) |
| メモリの返却 | |
| BOOL APIENTRY | Open () |
| システムヒープ領域の取得 | |
| virtual LPVOID APIENTRY | Reallocate (LPVOID lpvMem, SIZE_T bytes, DWORD dwFlags=MEM_ZERO) |
| 取得メモリの拡大 | |
基底クラス alt::HandleLibrary に属する継承公開メンバ関数 | |
| APIENTRY | HandleLibrary () |
| コンストラクタ | |
| APIENTRY | ~HandleLibrary () |
| デストラクタ | |
| BOOL APIENTRY | Close () |
| 使用しなくなったハンドルはこれでクローズします。 | |
| HANDLE APIENTRY | GetHandle () const |
| 継承先はこの関数でハンドルを取得します。 | |
基底クラス alt::WindowsLibrary に属する継承公開メンバ関数 | |
| APIENTRY | WindowsLibrary () |
| コンストラクタ | |
| virtual APIENTRY | ~WindowsLibrary () |
| デストラクタ | |
| virtual DWORD APIENTRY | GetErrNo () const |
| WindowsAPIのエラー値を取得します。 | |
| virtual VOID APIENTRY | SetErrNo () |
| WINAPIエラーの情報を設定します。 | |
| virtual LPVOID APIENTRY | Allocate (SIZE_T bytes, DWORD dwFlags=MEM_ZERO)=0 |
| メモリの取得 | |
| virtual BOOL APIENTRY | Free (LPVOID lpvMem)=0 |
| メモリの返却 | |
| virtual LPVOID APIENTRY | Reallocate (LPVOID lpvMem, SIZE_T bytes, DWORD dwFlags=MEM_ZERO)=0 |
| 取得メモリの拡大 | |
非公開メンバ関数 | |
| SIZE_T APIENTRY | BoundarySize (SIZE_T bytes) const |
非公開変数類 | |
| BOOL | _bCreateHeap |
| INT | _iBoundary |
その他の継承メンバ | |
基底クラス alt::HandleLibrary に属する継承限定公開変数類 | |
| HANDLE | _hObject |
| ハンドルを使用するWindowsAPIで保持するHANDLE値 | |
基底クラス alt::WindowsLibrary に属する継承限定公開変数類 | |
| DWORD | _dwErrorNo |
ヒープメモリに関するAPIを集約したクラス
HeapMemory.h の 45 行目に定義があります。
| HeapMemory::HeapMemory | ( | ) |
| APIENTRY alt::HeapMemory::HeapMemory | ( | const HeapMemory & | base | ) |
コピーコンストラクタ
| HeapMemory::~HeapMemory | ( | ) |
|
virtual |
メモリの取得
| bytes | 取得サイズ |
| dwFlags | 取得メモリへの設定 |
| 取得したメモリのアドレス |
alt::skeleton::IMemoryを実装しています。
HeapMemory.cpp の 115 行目に定義があります。
参照先 alt::HandleLibrary::_hObject, BoundarySize().
参照元 PerfCheck::HeapPerformanceCheck::Core(), WindowsLibraryTest::TEST_CLASS().
|
private |
| BOOL HeapMemory::Close | ( | ) |
取得したヒープ領域の解放
| TRUE(成功) | |
| FALSE(失敗) |
HeapMemory.cpp の 95 行目に定義があります。
| SIZE_T HeapMemory::Compact | ( | ) | const |
取得したヒープ領域の整理
| 整理した後のメモリサイズ |
HeapMemory.cpp の 110 行目に定義があります。
参照先 alt::HandleLibrary::_hObject.
参照元 alt::skeleton::Array< T >::Shurink(), WindowsLibraryTest::TEST_CLASS().
| BOOL HeapMemory::Create | ( | SIZE_T | initialSize = 0, |
| SIZE_T | maximumSize = 0, |
||
| DWORD | dwOptions = 0 |
||
| ) |
ヒープ領域の取得
| initialSize | 初期サイズ |
| maximumSize | 最大サイズ |
| dwOptions | オプション |
| TRUE(成功) | |
| FALSE(失敗) |
HeapMemory.cpp の 56 行目に定義があります。
参照先 _bCreateHeap, alt::HandleLibrary::_hObject.
参照元 PerfCheck::HeapPerformanceCheck::Core(), PerfCheck::FreightPerformanceCheck::DoAction(), LeakCheck::BinderMemoryLeakCheck::DoAction1(), LeakCheck::FreightMemoryLeakCheck::DoAction1(), LeakCheck::BinderMemoryLeakCheck::DoAction2(), LeakCheck::FreightMemoryLeakCheck::DoAction2(), LeakCheck::BinderMemoryLeakCheck::DoAction3(), LeakCheck::FreightMemoryLeakCheck::DoAction3(), LeakCheck::BinderMemoryLeakCheck::DoAction4(), LeakCheck::FreightMemoryLeakCheck::DoAction4(), LeakCheck::FreightMemoryLeakCheck::DoAction5(), LeakCheck::FreightMemoryLeakCheck::DoAction6(), WindowsLibraryTest::TEST_CLASS().
|
virtual |
メモリの返却
| lpvMem | 返却するアドレス |
| TRUE(成功) | |
| FALSE(失敗) |
alt::skeleton::IMemoryを実装しています。
HeapMemory.cpp の 130 行目に定義があります。
参照先 alt::HandleLibrary::_hObject.
参照元 PerfCheck::HeapPerformanceCheck::Core(), WindowsLibraryTest::TEST_CLASS().
| BOOL HeapMemory::Open | ( | ) |
システムヒープ領域の取得
| TRUE(成功) | |
| FALSE(失敗) |
HeapMemory.cpp の 87 行目に定義があります。
参照先 _bCreateHeap, alt::HandleLibrary::_hObject.
参照元 PerfCheck::FreightPerformanceCheck::DoAction(), WindowsLibraryTest::TEST_CLASS().
|
virtual |
取得メモリの拡大
| lpvMem | 拡大させるアドレス |
| bytes | 拡大サイズ |
| dwFlags | 再取得メモリへの設定 |
| 再取得したメモリのアドレス |
alt::skeleton::IMemoryを実装しています。
HeapMemory.cpp の 120 行目に定義があります。
|
private |
HeapMemory.h の 114 行目に定義があります。
参照元 HeapMemory(), Close(), Create(), Open().
|
private |
HeapMemory.h の 113 行目に定義があります。
参照元 HeapMemory(), BoundarySize().