From: SASADA Koichi Date: 2010-11-04T18:49:29+09:00 Subject: [ruby-dev:42537] Re: GC issues  ささだです。 (2010/11/04 0:52), Narihiro Nakamura wrote: >> > 2. GC.stress が true 時の挙動 >> > >> > GC.stress が true の時は、mark/free を行い、オブジェクト空間が(それな >> > りに)綺麗になっている、ということを期待しているように思いますが、現在は >> > gc_lazy_sweep() を行うだけなので、まだ sweep が完了していない場合は、 >> > mark などは起こりません。 > 単純に GC.stress はGCに負荷をかけるものだと思って、毎回 gc_lazy_sweep() > を呼び出すようにしていました。 > 特に深い意図はないので、異論がなければ前と同じように garbage_collect() > を呼び出すように戻しておきます。  これが導入された経緯は、C 拡張で volatile 抜けなどで、間違えて GC で回 収されてしまうようなオブジェクトを発見しやすくするため、なるべく早く・多 く mark することで見つけよう、ってことだったと思います。  なので、現状ではその意味がなくなっています。 # stress って名前が良くない? -- // SASADA Koichi at atdot dot net