ControlFreak
view release on metacpan or search on metacpan
lib/ControlFreak/Proxy/Process.pm view on Meta::CPAN
sub init {
my $proxy = shift;
#set_nonblocking($proxy->{$_}) for (qw/command_fh status_fh log_fh/);
## where we buffer the writes until our wout fh are ready
$proxy->{log_buffer} = [];
$proxy->{status_buffer} = [];
## callbacks
$proxy->{readers}{ $proxy->{command_fh} } = sub { $proxy->command_cb(@_) };
$proxy->{writers}{ $proxy->{log_fh} } = $proxy->{log_buffer}
if $proxy->{log_fh};
$proxy->{writers}{ $proxy->{status_fh} } = $proxy->{status_buffer};
my $fh = $proxy->{command_fh};
$proxy->{read_select} = IO::Select->new;
$proxy->{write_select} = IO::Select->new;
$proxy->{read_select}->add($proxy->{command_fh});
$proxy->{write_select}->add($proxy->{log_fh})
( run in 0.413 second using v1.01-cache-2.11-cpan-9b1e4054eb1 )