Bonjour,
J'essais de comprendre comment utiliser des threads en c avec process.h, mais je n'ai pas compris comment passer des arguments à ma fonction.
J'aurai besoin d'envoyer 3 entiers à ma fonction.
Si vous avez des idées ou des exemples ?
Merci.
Version imprimable
Bonjour,
J'essais de comprendre comment utiliser des threads en c avec process.h, mais je n'ai pas compris comment passer des arguments à ma fonction.
J'aurai besoin d'envoyer 3 entiers à ma fonction.
Si vous avez des idées ou des exemples ?
Merci.
Tu déclares ta fonction avec le prototype suivant:
Et tu lui passes un pointeur de structure.Code:unsigned int __stdcall ma_fonction( void * pv)
- Si ta fonction n'a rien à retourner qui dépasse la taille d'un int, tu peux allouer la structure avec malloc() avant de lancer le thread, et la détruire avec free() dans le thread créé, comme ça pas de problèmes de durée de vie.
- Si ta fonction doit retourner quelque chose de gros, alors elle doit passer par la structure. Ça veut dire que la durée de vie de la structure doit durer jusqu'à la fin du thread créé, et au-delà. Tu dois la gérer en conséquence.