timeout a user input in perl
# disable output buffering$| = 1;my $answer;eval { my $count = 10; local $SIG{ALRM} = sub { # print counter and set alaram again if (--$count) { print "$count\n"; alarm 1 } # no more waiting else { die "timeout getting the input \n" } }; # alarm every second alarm 1; $answer = <STDIN>; alarm 0; chomp $answer;};if ($@) { #die $@ if $@ ne "timeout getting the input\n"; $answer = 'A';}