sub queuecommand { my ($mcvpservers, $cmd, $priority, $server, $file, $time) = @_; my @tmp : shared; @tmp = ($cmd, $priority, $server, $file, $time); my @queue = $mcvpservers->{$server}->[2]; print $#queue+1; if ($#{$queue[0]}+1 == 0) { push @queue, \[@tmp]; } else { for(my $i = 0; $i < $#queue+1; $i++) { if ($priority > $queue[$i][1]) { splice @queue, $i, 0, \[@tmp]; last; } } } print $#queue+1; }