请选择 进入手机版 | 继续访问电脑版

硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3094|回复: 4
收起左侧

[FreeRTOS] 任务卡死在while循环

[复制链接]

4

主题

12

回帖

24

积分

新手上路

积分
24
发表于 2021-7-8 16:55:42 | 显示全部楼层 |阅读模式
下载.png
任务卡在这个while循环,但是这个while里面的条件已经不满足
初步判断是里面申请的动态内存释放失败
调试信息如下
下载 (1).png
下载 (2).png



回复

使用道具 举报

4

主题

12

回帖

24

积分

新手上路

积分
24
 楼主| 发表于 2021-7-8 17:14:04 | 显示全部楼层
图你好像没有审核过,审核大大
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
105942
QQ
发表于 2021-7-9 09:34:27 | 显示全部楼层
申请后,一定要判断返回值,是否有效申请了再使用,感觉这个地方有问题。
回复

使用道具 举报

4

主题

12

回帖

24

积分

新手上路

积分
24
 楼主| 发表于 2021-7-9 15:27:12 | 显示全部楼层
eric2013 发表于 2021-7-9 09:34
申请后,一定要判断返回值,是否有效申请了再使用,感觉这个地方有问题。

你看我的申请函数,我已经判断过了,而且是成功的
回复

使用道具 举报

4

主题

12

回帖

24

积分

新手上路

积分
24
 楼主| 发表于 2021-7-14 09:37:27 | 显示全部楼层
这个问题我已经解决了,发现在需要判断的while循环里面的那个变量的定义加了volatile 关键字就可以了,至于为什么大家可以去查一查该关键字的用法,
还有一个问题是vPortFree没有释放的问题,我在使用vPortFree之后,再把已经释放掉的指针手动置NULL,就解决了heap_4.c的警报问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-3-29 18:09 , Processed in 0.186145 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表