##
$ time perl -e'alarm 5;printf "Num: %d\tTime left: %f\n", select undef, undef, undef, 3.0'
Num: 0 Time left: 0.000000
$
##
##
$ perl -e'$SIG{ALRM}=sub {};alarm 1;printf "Num: %d\tTime left: %f\n", select undef, undef, undef, 3.0'
Num: -1 Time left: 2.000000
$
##
##
$ perl -e'printf "OS: %s\tNum: %d\tTime left: %f\n", $^O, select undef, undef, undef, 1.5'