Hello tout le monde!!
Voilà, je suis entrein de me mettre aux threads. mais j'ai un peu de mal.
Donc mon but, c'est de lancer un thread qui va écrire dans un fichier à partir d'une fonction.Avec ce code je lance le thread et je ne m'en occupe plus (thread->detach). le soucis, c'est qu'il ne se finit pas. A cause de la fin de la fonction_test.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 use threads; my $thread; sub fonction_test(){ print "On est dans la fonction d'appelle du thread\n"; $thread =threads->new(\&fonction_ecriture); $thread->detach; #on se désintéresse du thread. print "On est à la fin de la fonction d'appelle du thread\n"; } sub fonction_ecriture(){ my $i=0; open(FILE_TRAITEMENT,">resultat_thread.log"); for $i(0..15){ print"On est dans la fonction appellée par le thread\n"; sleep(1); } close(FILE_TRAITEMENT); } #Main &fonction_test();
Est ce que vous pourriez m'indiquer un moyen de créer un thread dans une fonction et de faire en sorte de le laisser s'exécuter jusqu'à sa fin.
Merci d'avance.
Partager