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;