J'utilise ioctl() pour vérifier si la fin de lecture d'un tube bloque. J'ai mis ioctl(the_pipe[0], FIONBIO, ...)
(je ne suis pas sûr ce que le 3ème paramètre est censé être, puis-je le mettre à NULL?). Si je comprends bien, read(the_pipe[0], buf, buf_len);
est supposé définir un code d'erreur pour EWOULDBLOCK (EAGAIN), mais où est ce code d'erreur, comment l'obtenir?Comment errno est-il défini par ioctl() dans c
Merci
Pour être plus explicite, mettez "#include" en haut de votre code. Plus tard, vous pouvez faire quelque chose comme "if (errno == EWOULDBLOCK) ...". Vous ne voulez pas ou ne devez pas définir errno vous-même; il est défini pour vous en incluant le fichier d'en-tête. –
UncleO