use threads; use warnings; use Math::GMP; $th1 = threads->new(\&start_thread1, '123' x 11); $ret1 = $th1->join(); if(ref($ret1) eq 'Math::GMP') { print "\$ret1 => ", ref($ret1), " ", Math::GMP::get_str_gmp($ret1, 10), "\n"; } sub start_thread1 { my $mbi = Math::GMP->new($_[0]); return $mbi; } #### use threads; use warnings; #use Math::Pari; use Math::BigInt; $th1 = threads->new(\&start_thread1, '123' x 11); $ret1 = $th1->join(); print $ret1, "\n"; sub start_thread1 { my $mbi = Math::BigInt->new($_[0]); return $mbi; } __END__ Outputs: 123123123123123123123123123123123