xActionx
Software-Overclocker(in)
Hey Leute,
Ruby will mal wieder nicht so wie ich will deshalb frage ich jetzt nachdem ich nichts passendes gefunden habe.
Und zwar möchte ich, dass eine Schleife unterbrochen wird wenn ich eine Taste (in diesem Fall C) drücke.
Bisher sieht mein Code wie folgt aus. Dieser beendet die Schleife jedoch nur wenn ich auf C und dann auf Enter drücke:
Das Problem liegt wohl daran, dass das Ubuntu Terminal auf $STDIN einen Zeilenpuffer liegen hat und ich hab keine Ahnung, wie ich den umgehe...
Vielen Dank im Vorraus
MFG
P.S. Mit "getc" funktioniert es ebenfalls nicht :\
Ruby will mal wieder nicht so wie ich will deshalb frage ich jetzt nachdem ich nichts passendes gefunden habe.
Und zwar möchte ich, dass eine Schleife unterbrochen wird wenn ich eine Taste (in diesem Fall C) drücke.
Bisher sieht mein Code wie folgt aus. Dieser beendet die Schleife jedoch nur wenn ich auf C und dann auf Enter drücke:
Code:
#-*-coding: utf-8 -*-
@exit = false
Thread.new do
@exit = true if STDIN.read(1) == 'c'
end
loop do
puts "loop"
sleep 1
break if @exit
end
Vielen Dank im Vorraus
MFG
P.S. Mit "getc" funktioniert es ebenfalls nicht :\
Zuletzt bearbeitet: