achild 发表于 2022-4-6 17:56:53

lwip中发送超时怎么用啊?

本帖最后由 achild 于 2022-4-6 18:21 编辑

最近在进行stm32h7网口调试,为了完成热插拔。
使用了接收,发送超时来避免设备在阻塞状态下卡死。
接收功能超时跳出正常。但发送就有些奇怪了,netconn_write在阻塞发送时,网线拔了之后,并不会一直阻塞,而是返回Routing problem。
netconn_write在非阻塞发送时,返回Illegal value,直接不能用了。然后改成netconn_write_partly发送,数据是发送出去了,但是函数不返回了,超时也没返回了。

问题如下:
1.netconn_write在阻塞发送时,即使发送失败也是会返回的吗?
2.netconn_write在非阻塞发送时,怎么样正确运行?

achild 发表于 2022-4-7 14:52:16

mark。重写了一遍发送,非阻塞状态下的发送莫名其妙就好了,。
阻塞状态发送时,拔了网线也不会阻塞,而是立即返回Routing problem。所以阻塞发送也不用担心卡死。
页: [1]
查看完整版本: lwip中发送超时怎么用啊?