(2011/09/23 19:02), SASADA Koichi wrote:
>  うーん,これはどうするべきかな.ファイナライズ処理を遅延させるように
> コードを書き換えれば解決できますが,ちょっと大がかりな気もしますね.問題
> が weakref だけなら,大がかりでもいい気がしますが.

 わかりづらい文章になってしまってすみません.weakref 側を,ファイナライ
ザ処理を遅延できるように大がかりに書き換えればよい,という意図でした.例
えば,ファイナライザはこの処理をファイナライザの *後で* 実行するように,
例えば Thread 作っちゃうとかすれば解決できます.

 weakref のコードを見ていないので,どのように解決するのがスマートかわか
りませんが,現状ですと「単に weakref のバグです」としか言えないんじゃな
いかと思います.ただ,Ruby 自体に「こういう機能があるともっと綺麗に書け
る」といった話に発展する可能性は否定しません.

-- 
// SASADA Koichi at atdot dot net