From: Benoit Daloze Date: 2010-07-14T21:43:29+09:00 Subject: [ruby-core:31282] Re: [Bug #3566] memory leak when spawning+joining Threads in a loop On 13 July 2010 23:55, Eric Wong wrote: > Bug #3566: memory leak when spawning+joining Threads in a loop > http://redmine.ruby-lang.org/issues/show/3566 > > Author: Eric Wong > Status: Open, Priority: High > Category: core > ruby -v: ruby 1.9.2dev (2010-07-11 revision 28618) [x86_64-linux] > > The following loop causes Ruby 1.9.2-rc2 memory usage to grow without bounds: > > �loop { Thread.new {}.join } > > I can't reproduce this with 1.9.1-p378 On 14 July 2010 13:56, Run Paint Run Run wrote: > Confirmed on trunk: ruby 1.9.3dev (2010-07-12 trunk 28620) [i686-linux]. Unconfirmed on trunk, OSX: ruby 1.9.3dev (2010-07-14 trunk 28642) [x86_64-darwin10.4.0] Memory usage stay stable (at least after a few minutes) At least, Thread objects get collected by GC: everytime I get 1466 Threads, GC runs and remove 50 (so 1416 left) ruby -e 'loop { Thread.new {}.join; p ObjectSpace.each_object(Thread) {} }'