If you wait for input, you should probably use the four argument
select. Or better:
IO::Select.
If you really just want to wait for less than a second, well, use the four argument select anyway ;)
select(undef, undef, undef, 0.1) will wait for 1/10 of a second.
Another solution is to use
Time::HiRes for that:
use Time::Hires qw(sleep); sleep 0.1;
2;0 juerd@ouranos:~$ perl -e'undef christmas'
Segmentation fault
2;139 juerd@ouranos:~$