title: Perl Parallel::ForkManager - share hash with parrent and merge with exists
body: <p>Im begineer in programming languages. First time Im using run_on_finish callback for hashref. Do I do it correctly? Im trying send hash to parrent and merge keys and values with rest values of this hash. I want to get exactly the same hash that I would get without using ForkManager and child processes.</p>
  
  <pre><code>use Hash::Merge qw/merge/;
  use Parallel::ForkManager;
  use Data::Dumper;
  my $pm = Parallel::ForkManager-&gt;new(10);
  my %hash;
  
  $pm-&gt;run_on_finish(sub {
  my ($pid,$exit_code,$ident,$exit_signal,$core_dump,$data)=@_;
    %hash = %{ merge( \%hash, \$data-&gt;{$i} ) };
    print "TEST: $data-&gt;{$i} \n";
  });
  my @tablica = ('jeden', 'dwa', 'trzy');
  foreach (@tablica) {
    my $pid = $pm-&gt;start and next;
    $rsdev{$_} = localtime;
    $pm-&gt;finish(0, \%rsdev);
  }
  
  print Dumper \%hash;
  </code></pre>
  
  <p>output</p>
  
  <pre><code>perl "untitled.pl"
  TEST:  
  TEST:  
  TEST:  
  $VAR1 = {};
  </code></pre>
  
  <p>Im trying to get output like this:</p>
  
  <pre><code>$VAR1 = {
            'jeden' =&gt; 'Mon Mar 26 17:26:01 2018',
            'dwa' =&gt; 'Mon Mar 26 17:26:01 2018',
            'trzy' =&gt; 'Mon Mar 26 17:26:01 2018',
          };
  </code></pre>
  
  <p>Im dont know why but $data->[0] value is empty. What Im doing wrong?</p>