別に書くほどのことは無いのですが。
QudoをAEとの組み合わせで使ったので、work メソッドの中身をAE::timer に渡すことにしました。
my $qudo = Qudo->new(...); $w = AE::timer 0, $qudo->{work_delay}, sub { my $manager = $qudo->manager; unless ($manager->has_abilities) { Carp::croak 'manager dose not have abilities.'; } $manager->work_once; }
これだけ。
AE::signal とかでも良いような気もする。