1.使用esp32-idf例程中得tcp_client进行通信,为了验证这个例程得可靠性,进行了压力测试,80ms周期连续发送数据,接收起来完全不会粘包(把延时改为1MS)
2.当改动例程,取消例程while里得send,,注释掉后,会发现接收到数据会出现粘包,从接收到12字节变成24字节
3.两种原因猜测:1.发送和接收都使用同一个缓冲区,发送可以使接收重新读取缓冲区,不至于造成读取缓慢以至于粘包 2.使用tcp_server 一直recv,没有send也不会出现粘包现象,但是多了keepalive 得设置,是否由于保活影响,要等下次再试试了,累了