Bonjour
J'essai d'écrire un booléen dans un tube nomé. Lorsque j'écrit dedans, celui ci est ouvert en lecture seule par un autre processus qui doit venir le lire.
Voici un extrait du code du processus qui doit écrire dans le tube.
Voilà je ne comprends pas d'où vient mon problème, évidemment le processus qui doit lire le fichier bloque sur le read, étant donné que le fichier est vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 if ((fd = open(pidChar,O_WRONLY) < 0)) { fprintf(stderr , "Impossible d'ouvrir le fichier réponse pour le client \n",req->pidClient); } struct stat statBuf; //la ligne suivante affiche 1 printf("nb octets réponses écrits %d \n",(int)write(fd,&rep,sizeof(bool)) ); fstat(fd,&statBuf); //Cependant cette ligne renvoit 0. printf("Nb octets présents dans le tube (stat)%d \n",(int)statBuf.st_size);
Merci d'avance !
Partager