Bonjour

Etudiant le c++ , j'ai face à moi un diaporama de cours fait en C sur les threads , je me demandais donc si quelqu'un pouvait m'expliquer certaines choses ?

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
30
31
32
Exemple de thread
// Création de deux threads pointant sur les fonctions fct_thread1 et fct_thread2. Passage d'une chaine en parametre de t2. Réunion par 2 pthread_join. 
 
//1ère fonction exécutée par t1
void* fct_thread1(void * arg){
for (int i=0; i<10; i++) fprintf(stderr,"t1 %d\n",i); pthread_exit(NULL);
return NULL;
}
 
//2ème fonction exécutée par t2, reçoit une chaîne en paramètre
void* fct_thread2(void * chaine) {
char * chaine_recue=chaine;
for(int i=0; i<20; i++) {
write(1,"\tt2\n",4); printf("%s\n", chaine_recue); }
return NULL; }

 
int main(void) {
//declaration de 2 descripteurs de thread pthread_t t1, t2;
 
char texte[10]="toto";
printf("Depart de threads\n");
 
//lancement des 2 threads. t2 est lance avec passage de « to to » en parametre
 
pthread_create(&t1, NULL, fct_thread1, NULL); pthread_create(&t2, NULL, fct_thread2,(void*)texte); 
 
//on attend les 2 threads ici
pthread_join(t1,NULL);
pthread_join(t2,NULL);
 
//à partir de la ligne précédente, on se retrouve dans le proc. initial
Voilà voilà , ce que je ne saisis pas , c'est surtout les paramètres dans le main

merci d avance