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.







Répondre avec citation



Partager