From 7669985165b5dacb60902406f2b5a894506bdc45 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 12 Jan 2020 21:17:47 +0000 Subject: ds: add_timer: rename from AddTimer, remove a parameter The class parameter is pointless, especially for an internal sub which only has one external caller in a test. Add a sub prototype while we're at it to get some compile time checking. --- lib/PublicInbox/DS.pm | 13 +++++++------ t/ds-leak.t | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lib/PublicInbox/DS.pm b/lib/PublicInbox/DS.pm index 3989bd2b..fe794512 100644 --- a/lib/PublicInbox/DS.pm +++ b/lib/PublicInbox/DS.pm @@ -101,16 +101,17 @@ sub SetLoopTimeout { return $LoopTimeout = $_[1] + 0; } -=head2 C<< CLASS->AddTimer( $seconds, $coderef ) >> +=head2 C<< PublicInbox::DS::add_timer( $seconds, $coderef ) >> Add a timer to occur $seconds from now. $seconds may be fractional, but timers are not guaranteed to fire at the exact time you ask for. -Returns a timer object which you can call C<< $timer->cancel >> on if you need to. +Returns a timer object which you can call C<< $timer->cancel >> on if you need +to. =cut -sub AddTimer { - my ($class, $secs, $coderef) = @_; +sub add_timer ($$) { + my ($secs, $coderef) = @_; my $fire_time = now() + $secs; @@ -247,7 +248,7 @@ sub reap_pids { } if (@$WaitPids) { # we may not be donea, and we may miss our - $reap_timer = AddTimer(undef, 1, \&reap_pids); + $reap_timer = add_timer(1, \&reap_pids); } } @@ -653,7 +654,7 @@ sub _run_later () { sub later ($) { my ($cb) = @_; push @$later_queue, $cb; - $later_timer //= AddTimer(undef, 60, \&_run_later); + $later_timer //= add_timer(60, \&_run_later); } sub expire_old () { diff --git a/t/ds-leak.t b/t/ds-leak.t index 34ffc125..a4a56e0d 100644 --- a/t/ds-leak.t +++ b/t/ds-leak.t @@ -20,7 +20,7 @@ if ('close-on-exec for epoll and kqueue') { my ($r, $w); pipe($r, $w) or die "pipe: $!"; - PublicInbox::DS->AddTimer(0, sub { $pid = spawn([qw(sleep 10)]) }); + PublicInbox::DS::add_timer(0, sub { $pid = spawn([qw(sleep 10)]) }); PublicInbox::DS->EventLoop; ok($pid, 'subprocess spawned'); -- cgit v1.2.3-24-ge0c7