Coro-DataPipe
view release on metacpan or search on metacpan
lib/Coro/DataPipe.pm view on Meta::CPAN
}
sub set_process_iterator {
my ($self,$param) = @_;
my $process_data_callback = extract_param($param,qw(process));
my $main = $Coro::current;
$self->{process_iterator} = sub {
my $data = shift;
my $item_number = $self->{item_number}++;
$self->{busy}++;
my $coro = async {
local $_ = $data;
$_ = $process_data_callback->($data);
$self->{output_iterator}->($_,$item_number);
$self->{busy}--;
$main->ready;
};
};
}
# loads all free processor with data from input
( run in 0.355 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )