August 1998
Intermediate to advanced
800 pages
39h 20m
English
You need to sleep for less than a second.
Use the select() function, if your system supports
it:
select(undef, undef, undef, $time_to_sleep);
Some systems don’t support a four-argument
select. The Time::HiRes module provides a sleep
function that takes a floating point number of seconds:
use Time::HiRes qw(sleep); sleep($time_to_sleep);
Here’s an example of select. It’s a
simpler version of the program in Section 1.5. Think
of it as your very own 300-baud terminal.
while (<>) {
select(undef, undef, undef, 0.25);
print;
}Using Time::HiRes, we’d write it as:
use Time::HiRes qw(sleep);
while (<>) {
sleep(0.25);
print;
}The documentation for the CPAN modules Time::HiRes and BenchMark; the
sleep and select functions in
perlfunc(1) and Chapter 3 of
Programming Perl; we use the
select function for short sleeps in the
slowcat program in Section 1.5