不完整"/>
python socket接收数据不完整
标签:
Python Socket API参考出处:
使用socket.recv(pack_length)接收不定长的数据,如果数据包长度超过一定值,则接收的数据不全。
参照python3.4的文档可发现:
socket.recv(bufsize[, flags])Receive data from the socket. The return value is a bytes object representing the data received. The maximum amount of data to be received at once is specified by bufsize.
上述的英文的大体意思为:从socket中接收数据。返回值是byts类型。接收的最大数量的byte为缓冲区大小。
root@iZ94nil6ddfZ:~# cat setsockopt_test.py
#!/usr/bin/python
import socket
SEND_BUF_SIZE = 4096 # 发送缓冲区的大小
RECV_BUF_SIZE = 4096 # 接收缓冲区的大小
def modify_buff_size():
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
bufsize = sock.getsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF)
print "Buffer size [Before]: %d" %bufsize
sock.setsockopt(
更多推荐
python socket接收数据不完整
发布评论