summaryrefslogtreecommitdiff
path: root/sample
diff options
context:
space:
mode:
Diffstat (limited to 'sample')
-rw-r--r--sample/weakref.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/sample/weakref.rb b/sample/weakref.rb
new file mode 100644
index 0000000000..b9f38f954f
--- /dev/null
+++ b/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)