概要
Object#undefine_finalizer(obj) -> object
詳細
define_finalizer で登録した obj が解放されるときに実行されるファイナライザ proc の登録をすべて解除する。
サンプルコード
class Hoge def Hoge.callback proc { puts "finalize" } end def initialize ObjectSpace.define_finalizer(self, Hoge.callback) end def undef ObjectSpace.undefine_finalizer(self) end end hoge = Hoge.new GC.start hoge = Hoge.new hoge.undef GC.start
出力
undef にしたため、finalize が1回しか出力されない
finalize