Is there a way to increase the number of child processes that
PoCo::Generic forks off? I have done something similar with
POE::Wheel::Run and Net::SSH::Perl (see code snippet) but would like
to use PoCo::Generic instead of POE::Wheel::Run directly.
Thanks,
-David
--- Code Snippet ---
sub start_ssh {
my ( $kernel, $heap ) = @_[ KERNEL, HEAP ];
# Signal handlers
$kernel->sig( CHLD => '_sigchld' );
while ( keys %{ $heap->{ssh} } < $opt{children} ) {
my $host = get_next_host();
last if !defined $host;
my $ssh_wheel = POE::Wheel::Run->new(
Program => sub { get_data_from($host) },
StdoutFilter => POE::Filter::Reference->new(),
StdoutEvent => 'ssh_result',
StderrEvent => 'ssh_debug',
CloseEvent => 'ssh_done',
);
$heap->{ssh}{ $ssh_wheel->ID } = $ssh_wheel;
}
}
sub handle_ssh_done {
my ( $kernel, $heap, $ssh_wheel_id ) = @_[ KERNEL, HEAP, ARG0 ];
delete $heap->{ssh}{$ssh_wheel_id};
# back to start_ssh
$kernel->yield('next_ssh');
}