summaryrefslogtreecommitdiff
path: root/jni/ruby/sample/weakref.rb
diff options
context:
space:
mode:
Diffstat (limited to 'jni/ruby/sample/weakref.rb')
-rw-r--r--jni/ruby/sample/weakref.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/jni/ruby/sample/weakref.rb b/jni/ruby/sample/weakref.rb
new file mode 100644
index 0000000..b9f38f9
--- /dev/null
+++ b/jni/ruby/sample/weakref.rb
@@ -0,0 +1,9 @@
+require 'weakref'
+
+foo = Object.new
+p foo.to_s # original's class
+foo = WeakRef.new(foo)
+p foo.to_s # should be same class
+ObjectSpace.garbage_collect
+ObjectSpace.garbage_collect
+p foo.to_s # should raise exception (recycled)