Bonjour,
Je suis en train de créer un serveur multi-threads en C sous linux.
Au retour de la fonction la fonction accept, j'ai un file descriptor qui correspond à la nouvelle socket créée :
Je souhaiterais savoir si tant que je n'ai pas fait appel à
Code : Sélectionner tout - Visualiser dans une fenêtre à part accepted_socket_descriptor = accept (...);
Le kernel peut-il re-attribuer le même file descriptor déjà créé?
Code : Sélectionner tout - Visualiser dans une fenêtre à part close(accepted_socket_descriptor);
Si je comprends bien le man du close, normalement non, mais on sait jamais: connexion fermée côté client, erreurs, ...
En d'autres termes, je voudrais utiliser la valeur accepted_socket_descriptor comme identifiant unique de mes clients et être sûr que le kernel n'attribuera jamais le même file descriptor tant que je n'ai pas fait de close.
Partager