你好,我做了一个TCP服务器,用sl_send函数向客户端发送数据,但是我每次都是连续发送一定的次数后(大概54次这样),就不能发送了,函数返回值为负数,这是怎么回事呢?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好,我做了一个TCP服务器,用sl_send函数向客户端发送数据,但是我每次都是连续发送一定的次数后(大概54次这样),就不能发送了,函数返回值为负数,这是怎么回事呢?
1. 你是用的TI的launchpad板还是你自己的板?
2. SDK的版本是哪一个?
那说明是retry, 如果你再一次发送同样的数据也还是返回-11吗?
如果是这样的话,说明socket连接已经断了,你在TCP服务器那端可以抓包看看是不是已经断掉了吗?
我也遇到了同样的问题,也是在54包的位置就断开了socket。客户端提示是服务器断开了连接,程序里并没有断开。
我使用的是cc3200 作为AP模式 以及Socket 服务器端。作为STA和client模式运行时 大数据量没遇到这样的问题
我也遇到了相同的问题 发了几次帖 论坛都没有解释清楚
最后我得出的结论是 在非阻塞模式下 sl_send发送54次后就会失败
在阻塞模式下 发送若干次都不会失败。
希望TI 工程师能帮忙解决一下这个问题
Hi ldan yang:
这是TI给我回复的
Error code -11 (SL_EAGAIN) is absolutely normal when is used non blocking socket. When you get SL_EAGAIN you need wait a moment and repeat your send action.
Error code SL_SOC_ERROR in case of usage blocking socket can be caused that TCP connection was closed by remote site.
我也改成阻塞模式了,目前传512个包好使,再长的没试