Void syMallocMultiStat( heaph, wholeFreeSize, biggestFreeBlockSize )
SYS_MALCM_HEAPH *heaph
Uint32 *wholeFreeSize
Uint32 *biggestFreeBlockSize
heaph (出力)ヒープハンドル wholeFreeSize 全体の空き容量(heaph で示されるサブヒープ内) biggestFreeBlockSize 最大の連続領域のサイズ(heaph で示されるサブヒープ内)
なし
引数 heaph で示されるサブヒープ領域のフリーエリアの合計容量と最大の連続空き容量を調べます。
Sint8 myHeap[1024]; SYS_MALCM_HEAPH myHeaph; STRUCT_FOO *foo; Uint32 wholeSize, bigSize; syMallocMultiCreateHeap(&myHeaph, myHeap, 1024); if((foo = syCallocMulti(&myHeaph, sizeof(STRUCT_FOO), 3)) == NULL){ /* Could not allocate the memory */ myError(); } else { /* Allocation OK */ syMallocMultiStat(heaph, &whileSize, &bigSize); DoWhatYouWant(foo); syFreeMulti(&myHeaph, p); } syMallocMultiDelete(&heaph);
あらかじめ登録されたサブヒープ領域の情報を表示すること以外は syMallocStat()関数と同等の機能です。
syMallocMultiCreate() サブヒープの登録 syMallocMultiDelete() サブヒープの登録解除 syMallocMulti() syMallocMulti サブヒープからのメモリ取得 syReallocMulti() サブヒープ上での realloc 操作 syFreeMulti() サブヒープから取得したメモリ領域の開放 syCallocMulti() サブヒープ領域への calloc 操作 syMallocMultiChangeIF() サブヒープに対するインタフェースの置換え syMallocStat() メモリ使用状況の取得