… | |
… | |
52 | } |
52 | } |
53 | }; |
53 | }; |
54 | |
54 | |
55 | our $SCHEDULER = cf::async_ext { |
55 | our $SCHEDULER = cf::async_ext { |
56 | $Coro::current->{desc} = "map scheduler"; |
56 | $Coro::current->{desc} = "map scheduler"; |
|
|
57 | $Coro::current->prio (Coro::PRIO_MAX); |
57 | my $timer = Coro::Event->timer (after => 1); |
58 | my $timer = Coro::Event->timer (after => 1, data => cf::WF_AUTOCANCEL); |
58 | |
59 | |
59 | while () { |
60 | while () { |
60 | $timer->interval ($SCHEDULE_INTERVAL); |
61 | $timer->interval ($SCHEDULE_INTERVAL); |
61 | $timer->next unless $cf::LOADAVG > $SWAP_LOAD2; |
62 | $timer->next unless $cf::LOADAVG > $SWAP_LOAD2; |
62 | |
63 | |