NAME "CPS::Governor::IOAsync" - use IO::Async with CPS SYNOPSIS use CPS qw( gkforeach ); use CPS::Governor::IOAsync; use IO::Async::Loop; my $loop = IO::Async::Loop->new; my $gov = CPS::Governor::IOAsync->new( loop => $loop ); gkforeach( $gov, [ 1 .. 10 ], sub { my ( $item, $knext ) = @_; $loop->do_something( on_done => $knext ); }, sub { $loop->loop_stop }, ); $loop->loop_forever; DESCRIPTION This CPS::Governor allows functions using it to defer their re-execution by using the IO::Async::Loop "later" method, meaning it will interleave with other IO operations performed by "IO::Async". CONSTRUCTOR $gov = CPS::Governor::IOAsync->new( %args ) Returns a new instance of a "CPS::Governor::IOAsync" object. Requires the following argument: loop => IO::Async::Loop Reference to the "IO::Async::Loop" object. Additionally may take any other arguments defined by the CPS::Governor::Deferred class. AUTHOR Paul Evans