… | |
… | |
4 | use strict; |
4 | use strict; |
5 | |
5 | |
6 | use Symbol; |
6 | use Symbol; |
7 | use List::Util; |
7 | use List::Util; |
8 | use Socket; |
8 | use Socket; |
9 | use EV; |
9 | use EV 1.86; |
10 | use Opcode; |
10 | use Opcode; |
11 | use Safe; |
11 | use Safe; |
12 | use Safe::Hole; |
12 | use Safe::Hole; |
13 | use Storable (); |
13 | use Storable (); |
14 | |
14 | |
… | |
… | |
3603 | |
3603 | |
3604 | $NOW = $tick_start = EV::now; |
3604 | $NOW = $tick_start = EV::now; |
3605 | |
3605 | |
3606 | cf::server_tick; # one server iteration |
3606 | cf::server_tick; # one server iteration |
3607 | |
3607 | |
3608 | $RUNTIME += $TICK; |
3608 | $RUNTIME += $TICK; |
3609 | $NEXT_TICK += $TICK; |
3609 | $NEXT_TICK = $_[0]->at; |
3610 | |
3610 | |
3611 | if ($NOW >= $NEXT_RUNTIME_WRITE) { |
3611 | if ($NOW >= $NEXT_RUNTIME_WRITE) { |
3612 | $NEXT_RUNTIME_WRITE = List::Util::max $NEXT_RUNTIME_WRITE + 10, $NOW + 5.; |
3612 | $NEXT_RUNTIME_WRITE = List::Util::max $NEXT_RUNTIME_WRITE + 10, $NOW + 5.; |
3613 | Coro::async_pool { |
3613 | Coro::async_pool { |
3614 | $Coro::current->{desc} = "runtime saver"; |
3614 | $Coro::current->{desc} = "runtime saver"; |