Data-Checker

 view release on metacpan or  search on metacpan

lib/Data/Checker.pm  view on Meta::CPAN

sub _check_parallel {
   my($self,$data,$wantlist,$func,$opts) = @_;
   my(%pass,%fail,%info,%warn);
   my @ele      = keys %$data;
   my $max_proc = ($$self{'parallel'} > 1 ? $$self{'parallel'} : @ele);

   my $manager = Parallel::ForkManager->new($max_proc);
   $manager->run_on_finish
     (
      sub {
         my($pid,$exit_code,$id,$signal,$core_dump,$funcdata) = @_;
         my($ele,$err,$warn,$info) = @$funcdata;

         if (defined($err)  &&  @$err) {
            $fail{$ele} = $err;
         } else {
            $pass{$ele} = $$data{$ele};
         }

         if (defined($warn)  &&  @$warn) {
            $warn{$ele} = $warn;
         }



( run in 0.356 second using v1.01-cache-2.11-cpan-454fe037f31 )