From: SASADA Koichi Date: 2011-09-24T11:38:54+09:00 Subject: [ruby-dev:44538] Re: [ruby-dev:44537] Re: [ruby-dev:44536] Re: [ruby-dev:44535] Re: [ruby-dev:44534] Re: [ruby-dev:44532] [Ruby 1.9 - Bug #5350] WeakRef で謎の NoMethodError (2011/09/23 19:02), SASADA Koichi wrote: >  うーん,これはどうするべきかな.ファイナライズ処理を遅延させるように > コードを書き換えれば解決できますが,ちょっと大がかりな気もしますね.問題 > が weakref だけなら,大がかりでもいい気がしますが.  わかりづらい文章になってしまってすみません.weakref 側を,ファイナライ ザ処理を遅延できるように大がかりに書き換えればよい,という意図でした.例 えば,ファイナライザはこの処理をファイナライザの *後で* 実行するように, 例えば Thread 作っちゃうとかすれば解決できます.  weakref のコードを見ていないので,どのように解決するのがスマートかわか りませんが,現状ですと「単に weakref のバグです」としか言えないんじゃな いかと思います.ただ,Ruby 自体に「こういう機能があるともっと綺麗に書け る」といった話に発展する可能性は否定しません. -- // SASADA Koichi at atdot dot net