code tidy and create tmpdir if not exists

This commit is contained in:
Oliver Gorwits
2013-01-02 16:28:24 +00:00
parent d7f4d2db5d
commit 244033449d
3 changed files with 14 additions and 18 deletions

View File

@@ -17,27 +17,18 @@ use MCE;
use Role::Tiny;
use Path::Class 'dir';
my $tmp = dir($ENV{HOME}, 'tmp');
mkdir $tmp if ! -d $tmp;
my $mce = MCE->new(
tmp_dir => dir($ENV{HOME}, 'tmp'),
tmp_dir => $tmp,
spawn_delay => 0.15,
job_delay => 0.15,
user_func => \&call_worker_body,
user_func => sub { $_[0]->worker_body },
on_post_exit => \&restart_worker,
user_tasks => build_tasks_list(),
)->run();
sub call_worker_body {
my ($self) = @_;
$self->worker_body;
}
sub restart_worker {
my ($self, $e) = @_;
reset_jobs($e->{wid});
$self->restart_worker($e->{wid});
}
sub build_tasks_list {
my $tasks = [{
max_workers => 1,
@@ -73,3 +64,9 @@ sub worker_factory {
$self->worker_begin if $self->can('worker_begin');
};
}
sub restart_worker {
my ($self, $e) = @_;
reset_jobs($e->{wid});
$self->restart_worker($e->{wid});
}