fehlerfrei durchlaufen • Stabilität und Performanz von OTRS nicht beeinträchtigen • Keine ungewünschte Kommunikation nach außen • Trennung von Templates/Funktionalität • u.v.m.
my $fork_manager = Parallel::ForkManager->new( $max_processes ); $logger->trace( 'init fork manager with max ' .$max_processes . ' processes' ); for my $tmpjob ( @job_info ) { # do the fork $fork_manager->start and next; # create job and run it my $job = OTRS::OPR::Daemon::Job->new( %{$tmpjob} ); $job->run if $job; } # exit the forked process $fork_manager->finish; $fork_manager->wait_all_children;