访问手机版页面
你的位置:老古开发网 > 其他 > 正文  
程序没死但有些任务没反应的问题
内容导读:
问题1:  北京地铁项目,ARM板启动后正常,查询多次正常,如连续快速查询如在总查询中插入其他查询,会导致板子没反应,此时UART口不接收数据,而TASKALARM正常运行,能从UART口发出信息。此时如果从仿真器软复位后运行,直接进入DATAABORT中断。硬复位后正常。  这种现象在串口通讯和以太网通讯下情况一样。
分析:分析程序发现原来的程序中能输出调试信息,#define DEBUG_TASK 则能输出关于任务的一些调试信息,经调试发现,到一定时间后输出“%PcktBuf FULL!”这样的信息,表明已没有可用包空间。该问题的出现意味肯定有某个地方申请了包空间但用完后没释放,导致全部包空间被其申请。查找代码发现,有个释放包的语句被注释掉了,从而导致上述问题。
解决办法:恢复释放包空间语句。 教训,注释语句时如果有释放资源类语句时要特别注意。
标签:
来源: 作者: 时间:2006/9/25 16:50:53
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐