我有一个简单的任务,需要等待文件系统上的变化(它本质上是一个原型编译器)。所以我有一个简单的无限循环,在检查更改的文件后有5秒的休眠。
loop do
# if files changed
# process files
# and puts result
sleep 5
end
与Ctrl+C
敬礼相比,我更希望能够测试并查看某个键是否已被按下,而不会阻塞循环。从本质上讲,我只需要一种方法来判断是否有传入的按键,然后一种方法来获取它们,直到满足Q,然后退出程序。
我想要的是:
def wait_for_Q
key_is_pressed && get_ch == 'Q'
end
loop do
# if files changed
# process files
# and puts result
wait_for_Q or sleep 5
end
或者,这是Ruby做不好的事情吗?
https://stackoverflow.com/questions/946738
复制相似问题