use strict; use Thread; my $time : shared; my $t = Thread->new(\&listener,\$time); while (1) { $time = localtime; print $time,"\n"; sleep 1; } sub listener { my $time_ref = shift; while (1) { { lock($$time_ref); print "\tThread time: [$time]\n"; print "\tThread time: [$main::time]\n"; print "\tThread time: [$$time_ref]\n"; } sleep 3; } }