工具/软件:TI-RTOS
您好!
我们有一个使用 M4和 TI-RTOS for TivaC 2.14.4.31的系统、在该系统中、我们通过单独的线程来实现了重新启动 DHCP 客户端、该线程监控以太网链路的状态、并在插入网络电缆后重新添加 DHCP 客户端。
由于我们还允许系统具有静态 IP 地址、因此在连接电缆时、我们会删除静态 IP 地址的配置条目(CFGTAG _IPNet、CFGTAG _route、CFGTAG _SYSINFO/CFGITEM_DHCP_DHCADOMAINNAMESERVER)和 DHCP 客户端的配置条目(CFGTAG _SERVICE_CFGITEM_DHCP_DHCP_DHCPLINESERVER)。 之后,我们添加静态 IP 地址的配置条目或 DHCP 客户端的配置条目。
这一切都像一种魅力,但……
当我们反复拔下并插入以太网电缆时,有时会出现错误计时或尝试次数不确定的情况,DHCP 客户端由于在 dhcpSocketOpen()中没有插槽而失败。 在深入调查之后,这是由 PBM_Alloc()返回 NULL 引起的,也是由于 PBMQ_DEQ()在数据包池中没有遇到任何剩余的内容。
这是 NDK 版本中的错误、还是我们可能会做错误的事情?
AJ
