Bonjour,
Je developpe une application en C++.
La classe que je developpe comporte une méthode "recevoir (char *trame). Dans cette méthode, je fais appel à une autre méthode appelée "reception(char *message)".
Cette méthode créé un thread fils (fork()) qui récupère des données envoyées par un client (c une appli client/serveur), et il modifie la variable "message".
Dans le pere, je fais un wait(0) qui attend la fin du fils.
et malgré tout, je ne vois pas, depuis le père, la valeur de la variable message, alors que le fils l'a bien remplie !!
Est ce normal ???
Voici le squelette de mon prog:
int recevoir(char * trame){
int val_retour;
val_retour = reception(trame);
return val_retour;
}
int reception (char *message){
int val_retour = 0;
if (fork()!=0){
//père
wait(0);
cout<<message;
}
else{
//fils
//traitement de la réception
//message est remplit.
}
}
Merci
Valoue