blob: 33ab7a26512c0b62b46c1e73029bb56dad323347 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
prelude: |
# one thread, one mutex (no contention)
benchmark:
vm_thread_mutex1: |
require 'thread'
m = Thread::Mutex.new
r = 0
max = 2000
lmax = max * max
(1..1).map{
Thread.new{
i = 0
while i<lmax
i += 1
m.synchronize{
r += 1
}
end
}
}.each{|e|
e.join
}
raise r.to_s if r != max * max
loop_count: 1
|