Utilisation de Fork: plusieurs boucles executées en parrallèle

Utilisation de Fork: plusieurs boucles executées en parrallèle - Perl - Programmation

Marsh Posté le 27-05-2009 à 23:54:46    

Je cherche à exécuter 4 boucle en l'occurrence des boucles infinies de type while(1) en simultané en utilisant le fonction fork. Je précise que ce sont 4 boucles différentes.
 
Pour le moment je me suis limité à tenter de faire 2 boucles "for" qui impriment des valeurs différentes mais ca ne fonctionne pas et les 2 boucles sont exécutées en séquence.
 
Si qqn pouvait m'indiquer comment faire X boucles en parrallèle sous perl ca m'aiderait bcp, voici mon code qui ne marche pas:
 
#!/usr/bin/perl
 
my $pid;
my $pid2;
my $count;
 
$pid = fork();
if (not defined $pid) {
         die "Couldn't fork"
     }
elsif ($pid == 0) {
for ($count=1; $count<5; $count++)
{
print("child 1 $count \n" );
}
exit(0)
}
 
$pid2 = fork();
if (not defined $pid2) {
         die "Couldn't fork"
     }
elsif ($pid2 == 0) {
for ($count=11; $count<15; $count++)
{
print("child 2 $count \n" );
}
}


Message édité par merou91 le 28-05-2009 à 00:36:33
Reply

Marsh Posté le 27-05-2009 à 23:54:46   

Reply

Marsh Posté le 28-05-2009 à 21:08:41    

bah un for par dessus ...

Reply

Marsh Posté le 28-05-2009 à 21:30:57    

Tu devrais trouver des idées ici:
http://hell.jedicoder.net/?p=82  
http://mail.hyperic.org/pipermail/ [...] 00026.html
 
Si tu veux voir les fils exécuter des taches différentes, tu pourrais coder une table de procédures pour les invoquer selon l'indice de boucle de création du fils.
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 24-11-2009 à 05:12:42    

Bon déja je pense qu'il faudrait déclarer ton $count dans les for :
for (my $count=11; $count<15; $count++)
et
for (my $count=21; $count<25; $count++)
# enfin normalement ca marche quand même... c'est juste plus propre à mon avis

 

Et si tu comptes les synchroniser pour qu'elles soient toujours ensemble dans 100 000 boucles.... aie ! :-\

 

Et enfin, je ne suis pas sur que si le père quitte comme ca, les fils continuent à tourner .... (je dis juste qu'il faudrait vérifier, je ne sais plus trop...)


Message édité par MisterBark le 24-11-2009 à 05:13:29

---------------
La vie c'est comme une boite de chocolats, on ne sait jamais sur quoi on va tomber. (Forrest Gump)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed