OS_ClearHeap

構文

#include <nitro/os.h>
void OS_ClearHeap( OSArenaId id, OSHeapHandle heap, void* start, void* end );
  

引数

id クリアするヒープが含まれるアリーナのアリーナID
heap クリアするヒープのヒープハンドラ
start ヒープ領域の先頭アドレス
end ヒープ領域の終了アドレス(+1)

返り値

なし。

説明

既にあるヒープに対し、クリアして初期化を行ないます。

ヒープ heap 上に確保していたメモリブロックはすべて破棄されます。ヒープのための領域 startend を指定してください。ヒープに OS_AddToHeap()OS_AddExtraAreaToHeap() による飛び地がある場合、その部分は初期化対象になりません。また、初期化によってその領域はヒープの一部から外れてしまいます。こうしたヒープに対する初期化は注意が必要です。

本関数は OS_CreateHeap() で作成された通常ヒープに対する関数です。OS_CreateExtraHeap() で作成した特殊ヒープの場合は、OS_ClearExtraHeap() を使用してください。

参照

OS_InitAlloc, OS_AddToHeap, OS_ClearExtraHeap

履歴

2009/04/03 特殊ヒープについて追記
2004/11/08 初版