Async-Util
view release on metacpan or search on metacpan
=pod
=head1 NAME
Async::Util - Utilities for common asynchronous programming tasks
=head1 SYNOPSIS
use Async::Util qw(amap azipmap achain);
# async map
amap(
inputs => [ 'foo', 'bar' ],
action => \&something_asynchronous,
cb => \&do_this_at_the_end,
);
# invoke action on the corresponding input
azipmap(
inputs => [ 1, 1, 1 ],
actions => [
... # asynchronous subs
],
cb => \&do_this_at_the_end,
);
# execute steps in order
achain(
input => 2,
steps => [
... # asynchronous subs
],
cb => \&do_this_at_the_end,
);
Examples using AnyEvent:
use AnyEvent;
use Async::Util qw(amap);
my @timers;
},
],
cb => sub { $cv->send(@_) },
);
my ($res, $err) = $cv->recv; # $res is 6
=head1 DESCRIPTION
C<Async::Util> provides functionality for common tasks that come up when doing
asynchronous programming. This module's functions often take code refs. These
code refs are invoked with two arguments: the input and a callback to be
invoked on completion. When the provided callback is invoked it should be
passed an output argument and an optional error.
=head1 FUNCTIONS
=head2 amap
C<amap> is an asynchronous version of map:
amap(
inputs => <ARRAY_REF>,
action => <CODE_REF>,
cb => <CODE_REF>,
at_a_time => <INTEGER>, # defaults to 100
output => <BOOL>, # defaults to true
);
The action coderef is executed for every provided input. The first argument to
lib/Async/Util.pm view on Meta::CPAN
}
1;
__END__
=pod
=head1 NAME
Async::Util - Utilities for common asynchronous programming tasks
=head1 SYNOPSIS
use Async::Util qw(amap azipmap achain);
# async map
amap(
inputs => [ 'foo', 'bar' ],
action => \&something_asynchronous,
cb => \&do_this_at_the_end,
);
# invoke action on the corresponding input
azipmap(
inputs => [ 1, 1, 1 ],
actions => [
... # asynchronous subs
],
cb => \&do_this_at_the_end,
);
# execute steps in order
achain(
input => 2,
steps => [
... # asynchronous subs
],
cb => \&do_this_at_the_end,
);
Examples using AnyEvent:
use AnyEvent;
use Async::Util qw(amap);
my @timers;
lib/Async/Util.pm view on Meta::CPAN
},
],
cb => sub { $cv->send(@_) },
);
my ($res, $err) = $cv->recv; # $res is 6
=head1 DESCRIPTION
C<Async::Util> provides functionality for common tasks that come up when doing
asynchronous programming. This module's functions often take code refs. These
code refs are invoked with two arguments: the input and a callback to be
invoked on completion. When the provided callback is invoked it should be
passed an output argument and an optional error.
=head1 FUNCTIONS
=head2 amap
C<amap> is an asynchronous version of map:
amap(
inputs => <ARRAY_REF>,
action => <CODE_REF>,
cb => <CODE_REF>,
at_a_time => <INTEGER>, # defaults to 100
output => <BOOL>, # defaults to true
);
The action coderef is executed for every provided input. The first argument to
( run in 0.844 second using v1.01-cache-2.11-cpan-0d8aa00de5b )