1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/benchmark/bm_vm_thread_mutex1.rb
kou a17cb167ea * benchmark/: add missing spaces around assignment operators (= and +=) for
consistency.
  Approved by ko1.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-15 12:53:12 +00:00

21 lines
281 B
Ruby

# one thread, one mutex (no contention)
require 'thread'
m = 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