Bug #6664

Object finalizer do not run until program exit

Added by Yura Sokolov almost 3 years ago. Updated almost 3 years ago.

ruby -v:ruby 2.0.0dev (2012-06-28 trunk 36243) [x86_64-linux] Backport:


Test script: https://gist.github.com/3009867

- Ruby 1.8.7 (REE) is able to run finalizer on GC when its proc is created outside of scope and so that does not handle object in its binding.
- even Ruby 1.8.7 not able to run finalizer until program exit when finalizer's proc is created in scope where #define_finalizer is called
- neither Ruby 1.9.2, nor Ruby 1.9.3, nor Ruby-trunk is able to run finalizer until program exit.


#1 Updated by Nobuyoshi Nakada almost 3 years ago

  • Status changed from Open to Rejected
  • Priority changed from Urgent to Low

(1) an object may not be collected even if it seems not referred from reading the code.
(2) finalizers may not run just after the object is collected.

Also available in: Atom PDF