Skip to content

Commit 57d8940

Browse files
committed
Add Class#subclasses benchmark with concurrency
1 parent 665ba78 commit 57d8940

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

bench/bench_subclasses.rb

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
require 'benchmark/ips'
2+
3+
Benchmark.ips do |bm|
4+
[1, 5, 10, 50].each do |count|
5+
bm.report("#{count} thread Numeric.subclasses") do
6+
count.times.map {
7+
Thread.new {
8+
i = 10_000 / count
9+
while i > 0
10+
Numeric.subclasses
11+
i-=1
12+
end
13+
}
14+
}.each(&:join)
15+
end
16+
bm.report("#{count} thread Object.subclasses") do
17+
count.times.map {
18+
Thread.new {
19+
i = 10_000 / count
20+
while i > 0
21+
Object.subclasses
22+
i-=1
23+
end
24+
}
25+
}.each(&:join)
26+
end
27+
end
28+
end

0 commit comments

Comments
 (0)