use strict;
use threads;
use threads::shared;
my @param :shared;
@param = @ARGV;
my ( $f1r, $f2r ) ;
$f1r :shared;
$f2r :shared;
sub deal_file {}
sub compare {}
# main
while ( @param ) {
my $f1 = shift @param;
my $f2 = shift @param;
my $t1 = threads -> new ( sub { $f1r = deal_file ( $f1 ) } ) ;
my $t2 = threads -> new ( sub { $f2r = deal_file ( $f2 ) } ) ;
$t1 -> join(); $t2 -> join();
compare ( $f1r, $f2r ) ;}