1

In perl is there a way to have a program sleep for a certain amount of time unless the user presses a key? The following is my code:

use Term::ReadKey;
ReadMode 4;
while (not defined ($key = ReadKey(-1))) {
    sleep(50);
}
print "Get key $key\n";
ReadMode 0; 
Bijan
  • 7,737
  • 18
  • 89
  • 149

1 Answers1

2

I found my solution. Here is a basic answer

use Term::ReadKey;
ReadMode 4;
while(1) {
    my $key = ReadKey 50; #Sleep for 50
    if(defined $key) {
        print "Pressed $key\n";
    } else {
        print "Timed out\n";
    }
}
ReadMode 0; 
Bijan
  • 7,737
  • 18
  • 89
  • 149