MojoX-Run
view release on metacpan or search on metacpan
lib/MojoX/Run.pm view on Meta::CPAN
=cut
sub spawn {
my ($self, %opt) = @_;
unless (defined $self && blessed($self) && $self->isa(__PACKAGE__)) {
my $obj = __PACKAGE__->new();
return $obj->spawn(%opt);
}
$self->{_error} = '';
# normalize and validate run parameters...
my $o = $self->_getRunStruct(\%opt);
return 0 unless ($self->_validateRunStruct($o));
# start exec!
return $self->_spawn($o);
}
=head2 spawn_sub
my $code = sub { return { a => 1, b => 2} };
my $pid = $mojox_run->spawn_sub(
$code,
lib/MojoX/Run.pm view on Meta::CPAN
map {
if (exists($s->{$_}))
{
$s->{$_} = $opt->{$_};
}
} keys %{$opt};
return $s;
}
sub _validateRunStruct {
my ($self, $s) = @_;
# command?
unless (defined $s->{cmd}) { #} && length($s->{cmd}) > 0) {
$self->{_error} = "Undefined command.";
return 0;
}
# check command...
my $cmd_ref = ref($s->{cmd});
if ($cmd_ref eq '') {
( run in 0.503 second using v1.01-cache-2.11-cpan-a5abf4f5562 )