Project

General

Profile

Bug #6614

GC doesn't collect objects bound to (collectable) proc

Added by rogerdpack (Roger Pack) over 8 years ago. Updated over 8 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
tcs-ruby 1.9.3p28 (2012-01-28, TCS patched 2012-01-30) [i386-mingw32]
Backport:
[ruby-core:45732]

Description

Hello all.
Previously discussed here: http://www.ruby-forum.com/topic/4402823

I would expect the following code to eventually run the finalizers mentioned:

def finalized_puts bad
ObjectSpace.define_finalizer(bad) { print 'collector run', bad }
end

loop { finalized_puts [] }

This works in jruby as expected, but not in MRI. This has the unfortunate side effect of making define_finalizer very difficult to actually use right http://www.mikeperham.com/2010/02/24/the-trouble-with-ruby-finalizers/

Cheers!

Also available in: Atom PDF