在 ruby 的自带 doc 上看到一个 observer 模式的实例,试运行了一下,里面有这样的代码:
loop do
price = Price.fetch(@symbol)
puts "Current price: #{price}\n"
if price != lastPrice
changed # notify observers
lastPrice = price
notify_observers(Time.now, price)
end
sleep 1
end
在 sublime 的 build 模式来运行,结果一行结果都没有输出。随后把 sleep 那一行注释掉了,结果运行就没有问题了。
原来的代码在 dos command 模式下,用 ruby 命令行执行也是正常的。
环境是 sublime2,win7,ruby 版本是 2.00p195
是否 sublime 对于 sleep 的执行有问题啊?想不通为什么。