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.
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 C : Sélectionner tout - Visualiser dans une fenêtre à part 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.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Partager