2011-05-19 修正版 Ruby 風呂はいってる間に新しいアイデアが出たので修正 fibers = ARGV.map{|v| Fiber.new do t = Time.now while(Time.now - t < v.to_i); Fiber.yield(true); end puts v loop do; Fiber.yield(false); end end } while(fibers.map{|fib| fib.resume }.any?); end