[Pthread] Utilisation de pthread_create
Bonjour,
je cherche à mieux comprendre le bout de code (venant d'un livre) que voici:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| #include <stdio.h>
#include <pthread.h>
int i;
void addition(void)
{
i = i + 10;
printf("hello thread fils i=%d\n", i);
i = i + 20;
printf("hello thread fils i=%d\n", i);
}
int main(void)
{
pthread_t num_thread;
i = 0;
if(pthread_create(&num_thread, NULL, (void *(*)())addition, NULL) == -1) perror("pb pthread_create\n");
i = i + 1000;
printf("thread principal %d\n", i);
i = i + 2000;
printf("thread principal %d\n", i);
pthread_join(num_thread, NULL);
} |
si je comprend bien sur la fonction pthread_create on a en deuxième paramètre un pointeur de fonction... mais pourquoi (void *(*)()) devant?
je n'arrive pas à décortiquer
merci bien