NewtGC.h

ガベージコレクション [詳細]

#include "NewtMem.h"

ソースコードを見る。

マクロ定義

#define NewtGCHint(r, hint)
 GC を効率良く行うためのヒントを与える

関数

void NewtCheckGC (newtPool pool, size_t size)
newtObjRef NewtObjChainAlloc (newtPool pool, size_t size, size_t dataSize)
void NewtPoolRelease (newtPool pool)
void NewtGC (void)
newtRef NsGC (newtRefArg rcvr)


説明

ガベージコレクション

作者:
M.Nukui
日付:
2003-11-07
Copyright (C) 2003-2004 M.Nukui All rights reserved.

NewtGC.h で定義されています。


関数

void NewtCheckGC ( newtPool  pool,
size_t  size 
)

GCが必要かチェックする

引数:
pool [in] メモリプール
size [in] 追加サイズ
戻り値:
なし

NewtGC.c124 行で定義されています。

参照先 newtpool_t::maxspaceNEWT_NEEDGCnewtpool_t::usesize.

参照元 NewtObjChainAlloc()NewtObjRealloc().

void NewtGC ( void   ) 

ガベージコレクションの実行

戻り値:
なし

NewtGC.c506 行で定義されています。

参照先 NEWT_NEEDGCNEWT_POOLNEWT_SWEEPNewtGCMark()NewtPoolSweep()vm_env.

参照元 NVMInterpret()NVMLoop().

関数の呼び出しグラフ:

newtObjRef NewtObjChainAlloc ( newtPool  pool,
size_t  size,
size_t  dataSize 
)

メモリプール内でオブジェクトメモリを確保してチェインする

引数:
pool [in] メモリプール
size [in] オブジェクトサイズ
dataSize [in] データサイズ
戻り値:
オブジェクトデータ

NewtGC.c143 行で定義されています。

参照先 newtObjHeader::hnewtObj::headerkNewtObjLiteralNewtCheckGC()NewtMemAlloc()NewtMemFree()NewtPoolChain().

参照元 NewtObjMemAlloc().

関数の呼び出しグラフ:

void NewtPoolRelease ( newtPool  pool  ) 

メモリプールの解放

引数:
pool [in] メモリプール
戻り値:
なし

NewtGC.c248 行で定義されています。

参照先 newtpool_t::literalNEWT_DEBUGNewtObjChainFree()NewtPoolSnap()newtpool_t::objnewtpool_t::usesize.

参照元 NewtCleanup().

関数の呼び出しグラフ:

newtRef NsGC ( newtRefArg  rcvr  ) 

スクリプトから GC を呼出す(実際には GC を予約するだけ)

引数:
rcvr [in] レシーバ
戻り値:
NIL
覚え書き:
スクリプトからの呼出し用

NewtGC.c528 行で定義されています。

参照先 kNewtRefNILNEWT_NEEDGC.

参照元 NVMInitGlobalFns1().


NEWT/0に対してThu Nov 23 17:02:13 2006に生成されました。  doxygen 1.5.0