Socket有一个缓冲区,缓冲区是一个流,先进先出,发送和取出的可自定义大小的,如果取出的数据未取完缓冲区,则可能存在数据怠慢。其中【recv(1024)】表示从缓冲区里取最大为1024个字节,但实际取值大小是不确定的,推荐其值小于等于8192。
黏包问题:
Socket发送两条连续数据时,可能最终会拼接成一条进行发送
解决方法一:
两条数据间进行延时发送,如【tiem.sleep(0.5) #延时0.5s】
解决方法二:
每次发送后等待对方确认接收信息数据,发送一条后就立即接收等待
解决方法三:
设定接收数据大小,发送端每次发送需要发送的数据的数据大小,接收端通过设置【recv(xx)】只接