#!/usr/bin/env perl use strict; use warnings; use autodie; use MCE::Loop; use Data::Dumper; my $data_file = 'DATA_F.dat'; my (%hash, %hash2); { open (my $fh, '<', $data_file); while (<$fh>) { my ($k, $v) = split; $hash{$k} = $v; } } MCE::Loop::init { use_slurpio => 1, max_workers => 16, init_relay => 0, }; %hash2 = mce_loop_f { MCE->gather(split ' ', $$_); } $data_file; print Dumper \%hash; print Dumper \%hash2; #### $ cat DATA_F.dat 1 one 2 two 3 three #### $VAR1 = { '2' => 'two', '3' => 'three', '1' => 'one' }; $VAR1 = { '3' => 'three', '1' => 'one', '2' => 'two' }; #### $ cat DATA_F2.dat 1 a 2 b 3 c 4 d 5 e 6 f 7 g 8 h 9 i 10 j 11 k 12 l 13 m 14 n 15 o 16 p 17 q 18 r 19 s 20 t 21 u 22 v 23 w 24 x 25 y 26 z #### $VAR1 = { '13' => 'm', '3' => 'c', '16' => 'p', '20' => 't', '2' => 'b', '18' => 'r', '5' => 'e', '4' => 'd', '12' => 'l', '26' => 'z', '10' => 'j', '23' => 'w', '22' => 'v', '1' => 'a', '14' => 'n', '11' => 'k', '25' => 'y', '19' => 's', '17' => 'q', '15' => 'o', '9' => 'i', '6' => 'f', '24' => 'x', '21' => 'u', '7' => 'g', '8' => 'h' }; $VAR1 = { '11' => 'k', '14' => 'n', '25' => 'y', '19' => 's', '17' => 'q', '6' => 'f', '9' => 'i', '15' => 'o', '7' => 'g', '21' => 'u', '24' => 'x', '8' => 'h', '3' => 'c', '13' => 'm', '16' => 'p', '20' => 't', '5' => 'e', '4' => 'd', '2' => 'b', '18' => 'r', '12' => 'l', '26' => 'z', '10' => 'j', '23' => 'w', '22' => 'v', '1' => 'a' };