Well, i thought the mistake is in my approach of usage of alrm signal, that's why i pasted only part where i used it. Sorry :) In fact i can't simulate that situation myself. But it happend on 3 servers already (all under freebsd) and not even on 1 from 4 under Linux.
Maybe you can suggest me another way of usage of timeout-ed operations? Means when need to limit time of execution of some subs. And limit for time smaller then second.
p.s. my "d" sub :)
sub time_stamp {
my $time = shift;
$time = time() if ! defined $time;
my ($sec, $min, $hour, $mday, $mon, $year) = localtime($time);
return sprintf("%02d:%02d:%02d %02d/%02d/%04d", $hour,
$min, $sec, $mday, $mon+1, $year+1900);
}
sub d {
print "[".time_stamp()."] ".(caller(0))[0].", ";
print shift;
print "\n";
}