修正したもの

  • count-monitor.rb
  • countに対して複数プロセスが同時にアクセスしないようにする
  • lockの中は同時に実行されない
     require 'Monitor'
     lock = Monitor.new
     count = 0;
     t1 = Thread.new do
      100000.times do
       lock.synchronize do
        count += 1
       end
      end
     end
     t2 = Thread.new do
      100000.times do
       lock.synchronize do
        count += 1
       end
       end
     end
     t1.join; t2.join
     puts count