是的,您的结论是正确的。
socket.recv是一个阻止呼叫。
socket.recv(1024)将最多读取1024个字节,如果没有等待读取的数据将阻塞。如果您未读取所有数据,
socket.recv则不会阻止其他调用。
socket.recv如果连接已关闭或出现错误,也将以空字符串结尾。
如果要使用非阻塞套接字,则可以使用select模块(比仅使用套接字要复杂一些),也可以使用
socket.setblocking。
socket.setblocking过去我遇到过问题,但如果需要,可以随时尝试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)