X-Git-Url: http://www.dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FTimer.pm;h=60ef387717f74700569c72efcb3a88b6f3e2932a;hb=b9dffeff7239952814342dad19db3a51def6fab7;hp=683497d2d328f889f6d1ac6f1aaf9538587b3a4a;hpb=6624dcdf07d628e8d6a16fc6549edf40be25b7b2;p=spider.git diff --git a/perl/Timer.pm b/perl/Timer.pm index 683497d2..60ef3877 100644 --- a/perl/Timer.pm +++ b/perl/Timer.pm @@ -10,12 +10,14 @@ package Timer; -use vars qw(@timerchain $notimers); +use vars qw(@timerchain $notimers $lasttime); use DXDebug; @timerchain = (); $notimers = 0; +$lasttime = 0; + sub new { my ($pkg, $time, $proc, $recur) = @_; @@ -39,7 +41,9 @@ sub del sub handler { my $now = time; - + + return unless $now != $lasttime; + # handle things on the timer chain my $t; foreach $t (@timerchain) { @@ -48,6 +52,8 @@ sub handler $t->{t} = $now + $t->{interval} if exists $t->{interval}; } } + + $lasttime = $now; } sub DESTROY