【发布时间】:2014-09-27 01:11:29
【问题描述】:
使用recv() 方法时,有时我们无法接收到我们想要的数据,就像使用send() 一样。但是我们可以使用 sendall() 来解决发送数据的问题,那么接收数据呢?为什么没有这样的 recvall() 方法?
【问题讨论】:
-
在“接收所有”的上下文中,“所有”到底是什么意思?
-
@NPE 这意味着如果我写这样的东西:data = socket.recvall(1024),接收到的数据长度正好是 1024。而如果我使用 data = socket.recv(1024),有时接收到的数据小于 1024 字节。
-
这在某些情况下确实很有用。不过,在您的代码中实现是微不足道的(在
recv()周围循环)。
标签: python sockets python-2.7