J'utilise c. J'ai fd1 comme descripteur de fichier, puis-je appeler deux fois comme ça?Puis-je appeler deux fois un arrêt sur un descripteur de fichier en langage C?
main() {
....
shutdown(fd1, SHUT_WR);
....
shutdown(fd1, SHUT_WR);
....
}
Personnellement, je pense que cela fonctionne parce que fd1 n'a pas encore été vraiment libre. Je veux juste que quelqu'un confirme.
Alors shutdown (2) fonctionne toujours et le résultat est probablement -1? Je suis juste inquiet si shutdown (2) peut planter mon programme en envoyant une sorte de signal, comme SIGPIPE ... – root
Non, retourner '-1' signifie que cela n'a pas fonctionné, c'est la ** valeur de retour d'erreur ** . Cela ne veut pas dire que vous devriez écrire vos programmes afin de ne pas connaître l'état de la socket lorsque vous l'utilisez. –
Alors le 2e appel tue-t-il le programme? – root