my %host_info : shared; my $host_info_REF = \%host_info; my $dbc= DBI-connect("DBI:mysql:database=mydb;IPADDRESS, 'user, 'passowrd"); my $SQL = "SELECT * FROM mydb.HOSTNAMES;"; my $st = dbc->prepare($SQL); $st->execute(); my $row = 0; while (my $tmp = $st->fetchrow_hashref()){ for my $key (keys %$tmp){ $host_info_REF->{$row}->{$key} = $tmp->{$key}; } $row++; } my @threads; my %hostHash; my $hostHashRef = \%hostHash; foreach my $current_host( keys %host_info ){ $hostHashRef->{"curHost"}=$current_host; $hostHashRef->{"href"}=$host_info_REF; push (@threads, threads -> create (\&get_info, $hostHashRef)); } sub get_info[ #Get some info and add to hash }