我在使用CC3200的时候发现,在使用sock连接的时候,在发送数据后关闭sock,偶尔会跳进SimpleLinkSockEventHandler()这个函数里,产生了SL_SOCKET_TX_FAILED_EVENT,跟SL_ECLOSE错误。打印信息提示[SOCK ERROR]-close socket (21) operation failed to transmit all queued packets.
我想问什么样的条件会产生这个错误?然后怎么去避免?
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.
我在使用CC3200的时候发现,在使用sock连接的时候,在发送数据后关闭sock,偶尔会跳进SimpleLinkSockEventHandler()这个函数里,产生了SL_SOCKET_TX_FAILED_EVENT,跟SL_ECLOSE错误。打印信息提示[SOCK ERROR]-close socket (21) operation failed to transmit all queued packets.
我想问什么样的条件会产生这个错误?然后怎么去避免?
你是用TCP还是UDP的套接字呢?如果是用TCP, sl_Send返回的值是多少呢?
可能是因为你上层的数据发送下去了,不过底层WIFI的传输还没结束,你这个时候把socket关闭了,就会出错了。
我重新表述一下我的问题吧。
问:那如果真是像你说的底层发送没完成造成的。那我应该加什么处理才能避免这种情况?