diff options
-rw-r--r-- | benchmark/gc/ring.rb | 58 |
1 files changed, 29 insertions, 29 deletions
diff --git a/benchmark/gc/ring.rb b/benchmark/gc/ring.rb index e8b54a77d8..12172fb213 100644 --- a/benchmark/gc/ring.rb +++ b/benchmark/gc/ring.rb @@ -1,29 +1,29 @@ -# create many old objects
-
-max = 30_000_000
-
-class Ring
- attr_reader :next_ring
- def initialize n = nil
- @next_ring = n
- end
-
-
- def size
- s = 1
- ring = self
- while ring.next_ring
- s += 1
- ring = ring.next_ring
- end
- s
- end
-end
-
-ring = Ring.new
-
-max.times{
- ring = Ring.new(ring)
-}
-
-# p ring.size
+# create many old objects + +max = 30_000_000 + +class Ring + attr_reader :next_ring + def initialize n = nil + @next_ring = n + end + + + def size + s = 1 + ring = self + while ring.next_ring + s += 1 + ring = ring.next_ring + end + s + end +end + +ring = Ring.new + +max.times{ + ring = Ring.new(ring) +} + +# p ring.size |