xinob
Messages postés7Date d'inscriptionlundi 30 octobre 2006StatutMembreDernière intervention 6 février 2022
-
1 mai 2009 à 20:57
marcoantoine
Messages postés1Date d'inscriptionmercredi 12 octobre 2005StatutMembreDernière intervention 6 juillet 2009
-
6 juil. 2009 à 15:40
Bonjour a tous,
Je me permets de poster un message car je n’ai pas trouver de réponse que j’ai comprise sur le net .
En effet , j ai quelques questions concertant l’envoi de paramètre pour les threads en C++ :
Dans le main.cpp :
void main()
{
pthread_t thread;
int toto=3 ;
pthread_create (&thread, NULL, fonction ,NULL) ;
}
Pourriez vous modifier pthread_create (&thread, NULL, fonction ,NULL) ;pour qu’elle envoi toto en paramètre ?
Dans la fonction.h:
void* client(void* );
Pourriez vous modifier ceci pour pour que la fonction puisse bien envoyer toto ?
Dans le fonction.cpp :
void* client( void*)
Pourriez vous modifier ceci pour pour que la fonction puisse bien recevoir toto ?
marcoantoine
Messages postés1Date d'inscriptionmercredi 12 octobre 2005StatutMembreDernière intervention 6 juillet 2009 6 juil. 2009 à 15:40
tout a fait du coup pour ecrire ta fonction du doit mettre:
pthread_create (&thread, NULL, fonction, (void *) toto);
le cast en (void *) est obligatoire, et tu devra recaster en inverse dans ta fonction threadée.
ce qui te donne pour la fonction d'appel:
void* fonction(void * titi)
{
int variable = (int) titi;
}
et tu peut faire exactement pareil dans la fonction client