my( $networkinfo ) = threads->create( sub{ $remoteServer->getNetworkInfo() } ); my( $sysLog ) = threads->create( sub{ $remoteServer->getSystemLog() } ); my( $scsiInfo ) = threads->create( sub{ $remoteServer->getScsiInfo() } ); ... anything else that needs doing ## Now you're ready for the network info my @networkinfo = $networkinfo->join; ... ## Now you're ready for the scsi info my @scsiinfo = $scsiInfo->join; ... ## Now you're ready for the syslog my @syslog = $sysLog->join;