5 关于WIZnet组件包里的wiz_dhcp_work函数

发布于 2021-02-03 14:01:01

发现这个函数会被系统挂到系统工作组里去运行,假如一直没有插网线会导致sys_work线程每隔2S就运行一次该函数,且在函数里卡4S钟,发现wiz_dhcp_work函数里就是一个侧头侧尾的while(1),然后在里面循环了4秒钟,最后超时退出,这样一来比sys_work线程优先级低的线程就全部没法执行了,这影响了我其它线程,我的看法是要么wiz_dhcp_work函数得有优化的空间,其次sys_work线程能否调低呢,比如和idle线程一样的优先级。
希望对这两个问题都做出回答, 谢谢

查看更多

关注者
0
被浏览
167
3 个回答
MIOW_9186
MIOW_9186 2021-02-03

刚把wizet更新到最新版本的,试了下,如果一开机就不插网线,任然会在wiz_dhcp_work函数里卡很久才出来

潇潇熊
潇潇熊 2021-02-04

我也遇到同样问题,参考这里的解决办法
https://blog.csdn.net/qq_25186745/article/details/112858439

xiangxistu
xiangxistu 2021-03-01
  1. 提交到workquence 中后,由于 sys_work 线程优先级比较高;会拖累其他线程执行;

所以,最好能主动释放;

最新的更新 PR ,后续会合并到 master 分支:

https://github.com/RT-Thread-packages/wiznet/pull/56

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览