プライベートヒープオブジェクトを作成
Declare Function HeapCreate Lib "kernel32.dll" _
(ByVal flOptions As Long, ByVal dwInitialSize As Long, _
ByVal dwMaimumSize As Long) As Long
Declare Function HeapCreate Lib "kernel32.dll" _
(ByVal flOptions As Integer, ByVal dwInitialSize As Integer, _
ByVal dwMaimumSize As Integer) As Integer
HANDLE HeapCreate(
DWORD flOptions,
SIZE_T dwInitialSize,
SIZE_T dwMaximumSize
);
引数
flOptions
動作を指定する定数の組み合わせdwInitialSize
ヒープの初期化サイズ(バイト)dwMaximumSize
ヒープの最大サイズ(バイト)戻り値
0のとき ヒープは拡張可能"growable"になり、使用可能な限度まで
最大サイズを自動的に拡張する
0以外のとき ヒープは拡張不可能"non-growable"になる。
dwMaximumSizeは&H7FFF8未満でなければならない。
正常終了のとき 作成したヒープのハンドル
エラーのとき 0/pre>
備考
サイズに設定する値は、自動的にページのサイズ単位として丸められる。flOptionsの定数
ページサイズはGetSystemInfo()関数で取得可能。
取得したハンドルは不要になった時点でHeapDestroy()関数で破棄する。
HEAP_GENERATE_EXCEPTIONS = &H4 エラーのとき例外を発生させる
HEAP_NO_SERIALIZE = &H1 ヒープにアクセス中、他のスレッドのアクセスを許可