void*之阴沟里翻船
来源:互联网 发布:caffe softmax 编辑:程序博客网 时间:2024/06/06 08:54
最近在做嵌入式开发,使用的是FreeRTOS系统,使用uxTaskGetStackHighWaterMark获取task剩余栈空间时遇到了问题。
其中一个task获取剩余栈空间时总是返回0. 尝试增加任务堆栈大小没有任何效果。
最终发现竟然是uxTaskGetStackHighWaterMark传入的task handle有问题。
在获取handle时竟然是handle1 = &handle(此处为一段遗留代码,以前的代码并没有使用过handle1所以也没出过问题)
在FreeRTOS中typedef void * xTaskHandle,而void*类型是可以指向任何类型的,包括void**,所以当然也不会报错
所以使用if(NULL!=handle1)根本无法判断handle1有效性。
本人嵌入式开发经验很少,被这个bug也是折腾的够呛,足足找了接近一小时。
0 0
- void*之阴沟里翻船
- 阴沟里翻船之KeSetEvent
- 阴沟里翻船之C函数memset
- 呵呵,关于阴沟里翻船
- 笔试地小题,阴沟里翻船。
- 阴沟里翻船 联想笔记本装不了XP?
- 精彩十年(2)——阴沟里也翻船
- 关于js判断undefined类型,阴沟里翻船了啊
- 阴沟里翻船——学霸的迷宫
- 阴沟里翻船,我将11月2日定为每年的受耻日!
- 参加远光面试反思--阴沟翻船记
- 当程序用ado的jet4.0方式连接的时候,对于设有access数据库密码的mdb的访问居然报错“无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开”,而用odbc方式不报错,小阴沟里翻船,郁闷中然后查文档解决之
- 当程序用ado的jet4.0方式连接的时候,对于设有access数据库密码的mdb的访问居然报错“无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开”,而用odbc方式不报错,小阴沟里翻船,郁闷中然后查文档解决之
- .Net项目分层与文件夹结构大全(最佳架子奖,吐槽奖,阴沟翻船奖揭晓)
- (转)牛奶是如何倒进阴沟里的?-----
- 数据类型之void
- QT里的函数void Q_INIT_RESOURCE ( name )
- ICPC-西安赛区:翻船
- 输入一个整型变量,求它二进制位中含有1的个数
- 查找(一)史上最简单清晰的红黑树讲解
- listview分页加载
- MDK+STM32F4xx - 函数局部变量,数组与指针
- 最大的矩形
- void*之阴沟里翻船
- leetcode155: Min Stack
- mac查看端口,关闭进程
- 时间戳
- 查看apk信息,keystore或者jks信息
- Android动画全解析(一)
- Java基础,这是自己看视频总结的,可能有点乱
- word2vec原理推导与代码分析
- 搜索时的剪枝