Bonjour,

Pour lancer plusieurs proc, au lieu de lancer DANS plusieurs fenetres DOS mon proc, je fais des threads

J'ai l'impression qu'il prendre un peu plus de temps (par rapport à l'excéution sur fenetres DOS) et surtout il y a une erreur que je ne comprends pas trop

"A thread exited while 3 threads were running"

PS: '3' est un exemple, ça peut 2,4.....





#!/usr/bin/perl -w
use threads;
my($thr1);


$thr1 = threads->new(\&sub1, "Param 1","1.txt");
$thr1 = threads->new(\&sub1, "Param 2","2.txt");
$thr1 = threads->new(\&sub1, "Param 3","3.txt");
$thr1 = threads->new(\&sub1, "Param 4","4.txt");
$thr1 = threads->new(\&sub1, "Paraaaaa","5.txt");
@DonneesRenvoyees = $thr1->join;

print "Le thread a renvoyé @DonneesRenvoyees";

#***************************************************************************

sub sub1 {
my ($num,$fileO) = @_;
open(FILEIN,">$fileO") ;
if ($num eq "Paraaaaa"){
return ("ERREUR FICHIER");
}
for( my $i=0; $i<=10000; $i+=1 ){
#print ("Dans le thread : ".$num.":".$i."===".$toto."\n");
print (FILEIN "Dans le thread : ".$num.":".$i."\n");
}
close(FILEIN);
return ("FIN OK");
}



}

savez vous pourquoi ?

Merci

Cathy