def recv(self, buffer_size):
try:
data = self.socket.recv(buffer_size)
except socket.error as err:
debug("call: recv(), err: %s" % err, inst=self)
if err.errno in _ERRNOS_DISCONNECTED:
self.handle_close()
return b''
elif err.errno in _ERRNOS_RETRY:
raise RetryError
else:
raise
else:
if not data:
# a closed connection is indicated by signaling
# a read condition, and having recv() return 0.
self.handle_close()
return b''
else:
return data
评论列表
文章目录