Bonjour,
Je veux utiliser des sockets non bloquantes sur une lib que j'écris.
Mon souci est que lorsque je fais un read alors qu'il n'y a rien à lire, je pensais que la fonction allait juste ne rien retourner, mais non j'ai une exception de lever "error: [Errno 11] Resource temporarily unavailable"
J'utilise la portion suivnte de code pour créer ma socket :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.socket.connect((host, port)) self.socket.setblocking(0)
Quelqu'un saurait m'expliquer comment je peux faire pour utiliser les sockets comme je le veux ?
Edit: En fait non, même si j ai quelque chose a lire, j ai cette erreur.
Reedit :
J ai compris, en fait je fais un send juste avant, et au moment de faire mon receive, la socket doit toujours être occupée par les données à envoyer.
Il faudrait donc que je fasse un select pour être sur que ma socket est libre.
Partager