民斗です。

[Subject: [ruby-list:9959] デストラクタ(?)]
[Date: Sat, 10 Oct 1998 07:05:04 +0900  From:SEKI]

> インスタンスが消滅するときに後始末をさせたいと思っています。
> Ruby にはデストラクタ(?)のようなものはありますか?
> あるとすると、メソッド名は何とすればよいのでしょうか?

以前、同じような質問([ruby-list:9018])をしたことがありまして、その時の
まつもとさんの回答([ruby-list:9026])は以下でした。

> |2. C++ のデストラクタのようなものは Ruby ではどのように書くのでしょうか。
> |   C での拡張モジュール中では、Data_Make_Struct() の第4引数で関数を指定
> |   できるようですが、Ruby で作成したクラスの場合、どのように書くのか
> |   わかりませんでした。
> 
> RubyレベルではGCがあるので,明示的にオブジェクトを破棄する必
> 要はあまりないはずです.どーしても,GCのタイミングでなんらか
> の処理が行いたい場合には lib/final.rb を使うワザはありますけ
> どね.実例としては lib/tempfile.rb を参照して下さい.でも,
> 分かるかなあ.必要でしたら更に解説します.

--
民斗