Ruby 输入端接回路
我正在试图找到一种方法,当用户点击“x”+Enter时终止循环。我希望循环只在后台运行,直到用户取消它 大致如下:Ruby 输入端接回路,ruby,Ruby,我正在试图找到一种方法,当用户点击“x”+Enter时终止循环。我希望循环只在后台运行,直到用户取消它 大致如下: while gets.chomp != 'x' puts 'looping...' sleep 1 end 我是一名编程初学者,已经广泛搜索了如何做到这一点,因此任何帮助都将不胜感激 您必须为此使用线程: Thread.new do while line = STDIN.gets break if line.chomp == 'x' end
while gets.chomp != 'x'
puts 'looping...'
sleep 1
end
我是一名编程初学者,已经广泛搜索了如何做到这一点,因此任何帮助都将不胜感激 您必须为此使用线程:
Thread.new do
while line = STDIN.gets
break if line.chomp == 'x'
end
exit
end
# whatever you want to do in the background
# (or rather in the foreground, actually)
loop do
puts "foo"
sleep 1
end
问题是
STDIN.get
块,因此如果不使用只检查输入的后台线程来并行化程序,则无法同时执行其他操作。Merci Beaucup!我想我现在明白了@你好!我一直在寻找这个问题的解决方案,到目前为止,我只能找到非常类似的建议,但包括你的建议在内,没有一个适合我。ruby有什么变化吗?谢谢#RubyNewbies请在此处查看我的要点:。感谢提供有用的循环代码:)