lhb358 发表于 2011-11-2 09:09:05

RT+LWIP中lwip_sys_init的疑问

查看源代码,发现lwip_sys_init不仅调用了tcpip_thread线程,还产生了些信号量等变量 占用一定的空间,它本身的设计思路可能是系统初始化时一次执
行。但在
1.TCP连接出错或崩溃时,感觉只有复位一条路,否则关闭线程,再重新初始化,会产生内存问题
2.出于功耗等其它考虑,若想根据需要再调用lwip_sys_init时(应用是GPRS拔号)。

所以想修改tcpip_thread线程为可关闭,不知是将lwip_sys_init中新增变量变成全局好还是在关闭tcpip_thread线程,再释放变量好,本人对RT还不是很熟悉,望指点一两句。

ffxz 发表于 2011-11-2 09:32:45

1. 应该查为什么出错或奔溃;
2. 功耗因素与这个线程是否初始化关联不大呢。

如果 1 真正的想这么干,可以考虑把lwip做为一个应用模块加载,当然这样内存占用就会上去了。

lhb358 发表于 2011-11-2 09:42:33

1.出错与崩溃在长时间运行时是很难查到的,最简单的办法就是重连,重试。
2.可在IDLE里作低功耗处理,线程在内存中运行就会产生运行时间,即功耗增加,增加多少我没有评估过。

关于“应用模块加载”不知具体什么方法,我需要参考哪些内容

lhb358 发表于 2011-11-2 10:49:17

4.0的功能啊
页: [1]
查看完整版本: RT+LWIP中lwip_sys_init的疑问