网上看到一个问题,记录一下防止自己以后用的时候踩坑。
问题:
用的周公Luminary8962的开发板,提供的uCOS+LwIP模板.
发现调用select()函数,就出不来.
解决:
select()函数要使用超时机制,在LwIP中的每个线程都对应一个超时结构数组中的一个元素,注意是LwIP
中的线程,而不是uCOSII中建立的任务。所以若使用LwIP中的超时机制,就需要使用sys_thread_new()建立任务。
其实不使用sys_thread_new()直接使用OSTaskCreate应该也可以,只要自己维护一下超时数组就可以了。这个我没有详细测过。
使用select时的TCP建立后马上又被rst,是因为没有打开LwIP中的接收邮箱配置选项.
记录随笔
最新推荐文章于 2022-08-09 09:42:49 发布