From: Take_tk Date: 2003-11-21T20:02:25+09:00 Subject: [ruby-list:38830] オブジェクトを確実に廃棄する方法はありますか? たけ(tk)です ---- def dammy(canvas) end mc = Dir.new("c:") klass = Dir p "---" ; ObjectSpace.each_object(klass){|obj|p obj} dammy(mc) # ← これの有無で結果が変る。 mc = nil GC.start p "---" ; ObjectSpace.each_object(klass){|obj|p obj} ; p "---" ---- [ap-dev:1341] 引数にしただけでエラー? ← MetafileCanvas#font でヘルプ http://www.freeml.com/message/ap-dev@freeml.com/0001341 ちょっと特殊なオブジェクトで申し訳ないのですが、特定のタイミングで確実に 廃棄しないとエラーになってしまうオブジェクトがあるのです。 ところが、そのオブジェクトを引数にしてメソッドを呼び出しただけで廃棄され なくなってしまうようです。 うえのプログラムで調べたところ、Rubyの他のオブジェクトでも同様に廃棄され なくなるようです。 他から参照されていないオブジェクトを確実に廃棄する方法はありますでしょう か? Take_tk = KUMAGAI Hidetake たけ(tk)=熊谷秀武