use Time::HiRes qw ( setitimer ITIMER_REAL time ); $SIG{ALRM} = sub { print time, "\n" }; setitimer(ITIMER_REAL, 10, 2.5);