plucky (3) Mojo::IOLoop::ReadWriteProcess::Pool.3pm.gz

NAME
Mojo::IOLoop::ReadWriteProcess::Pool - Pool of Mojo::IOLoop::ReadWriteProcess objects.
SYNOPSIS
use Mojo::IOLoop::ReadWriteProcess qw(parallel); my $n_proc = 20; my $fired; my $p = parallel sub { print "Hello world\n"; } => $n_proc; # Subscribe to all "stop" events in the pool $p->once(stop => sub { $fired++; }); # Start all processes belonging to the pool $p->start(); # Receive the process output $p->each(sub { my $p = shift; $p->getline(); }); $p->wait_stop; # Get the last one! (it's a Mojo::Collection!) $p->last()->stop();
METHODS
Mojo::IOLoop::ReadWriteProcess::Pool inherits all methods from Mojo::Collection and implements the following new ones. Note: It proxies all the other methods of Mojo::IOLoop::ReadWriteProcess for the whole process group. get use Mojo::IOLoop::ReadWriteProcess qw(parallel); my $pool = parallel(sub { print "Hello" } => 5); $pool->get(4); Get the element specified in the pool (starting from 0). add use Mojo::IOLoop::ReadWriteProcess qw(pool); my $pool = pool(maximum_processes => 2); $pool->add(sub { print "Hello 2! " }); Add the element specified in the pool. remove use Mojo::IOLoop::ReadWriteProcess qw(parallel); my $pool = parallel(sub { print "Hello" } => 5); $pool->remove(4); Remove the element specified in the pool. maximum_processes use Mojo::IOLoop::ReadWriteProcess qw(parallel); my $pool = parallel(sub { print "Hello" } => 5); $pool->maximum_processes(30); $pool->add(...); Prevent from adding processes to the pool. If we reach "maximum_processes" number of processes, "add()" will refuse to add more to the pool.
ENVIRONMENT
You can set the MOJO_PROCESS_MAXIMUM_PROCESSES environment variable to specify the the maximum number of processes allowed in Mojo::IOLoop::ReadWriteProcess instances. MOJO_PROCESS_MAXIMUM_PROCESSES=10000
LICENSE
Copyright (C) Ettore Di Giacinto. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
Ettore Di Giacinto <edigiacinto@suse.com>