OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7267|回复: 11

请问freertos中的局部变量事宜

[复制链接]

91

主题

170

帖子

0

精华

初级会员

Rank: 2

积分
172
金钱
172
注册时间
2015-9-22
在线时间
101 小时
发表于 2018-3-22 14:11:15 | 显示全部楼层 |阅读模式
1金钱
   freertos中的任务1中定义的局部变量在任务1被切换出后,再从其他任务2调度回任务1,这个时候任务1的局部变量值能恢复原来的值吗?

最佳答案

查看完整内容[请看2#楼]

那必须是一样啊,不然那多任务还有什么意义,每个任务都有它的任务堆栈的就是来保存局部变量的啊,任务切换出去的时候就把他们压栈,切回来的时候再出栈呗
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

23

主题

344

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2305
金钱
2305
注册时间
2017-7-6
在线时间
280 小时
发表于 2018-3-22 14:11:16 | 显示全部楼层
那必须是一样啊,不然那多任务还有什么意义,每个任务都有它的任务堆栈的就是来保存局部变量的啊,任务切换出去的时候就把他们压栈,切回来的时候再出栈呗
回复

使用道具 举报

3

主题

144

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
498
金钱
498
注册时间
2018-3-5
在线时间
59 小时
发表于 2018-3-22 14:21:02 | 显示全部楼层
仿真看看
回复

使用道具 举报

0

主题

18

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1011
金钱
1011
注册时间
2016-5-13
在线时间
107 小时
发表于 2018-3-22 15:04:33 | 显示全部楼层
还是原来的值
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2016-4-13
在线时间
27 小时
发表于 2018-3-22 15:43:56 | 显示全部楼层
任务1在切换出来之前,局部变量进栈;任务1在切换回来之后,局部变量出栈;局部变量的值应该和之前的值是一样的,不知道这样讲对不对?
回复

使用道具 举报

70

主题

6697

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12687
金钱
12687
注册时间
2012-11-26
在线时间
3710 小时
发表于 2018-3-22 15:47:26 | 显示全部楼层
用static 修饰下  保险  还担心 就加上volatile ....
回复

使用道具 举报

1

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-12-22
在线时间
52 小时
发表于 2018-3-22 23:18:22 | 显示全部楼层
还是原来的值,执行其它任务的时候你的任务里边的变量回压入堆栈,任务被重新调度时变量出栈,所以值不变!!!
回复

使用道具 举报

8

主题

569

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2363
金钱
2363
注册时间
2015-5-8
在线时间
320 小时
发表于 2018-3-22 23:34:38 | 显示全部楼层
还是之前的值
回复

使用道具 举报

22

主题

203

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2017-11-29
在线时间
135 小时
发表于 2018-3-22 23:39:14 来自手机 | 显示全部楼层
创建任务函数里 是为这个任务里的局部变量申请内存 并切调度器有将之压栈操作, 返回此任务后 出栈复原,所以值还在。 可以看看任务调度器那节视频,明天我也再看看!
回复

使用道具 举报

91

主题

170

帖子

0

精华

初级会员

Rank: 2

积分
172
金钱
172
注册时间
2015-9-22
在线时间
101 小时
 楼主| 发表于 2018-3-26 10:57:09 | 显示全部楼层
1547674987 发表于 2018-3-23 08:45
那必须是一样啊,不然那多任务还有什么意义,每个任务都有它的任务堆栈的就是来保存局部变量的啊,任务切换 ...

谢谢啊。
回复

使用道具 举报

1

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2018-4-2
在线时间
7 小时
发表于 2018-4-3 09:00:19 | 显示全部楼层
值是不变的吧,否则这个系统久没有意义了,任务切出去后,会入栈保护的
回复

使用道具 举报

32

主题

883

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3990
金钱
3990
注册时间
2015-11-14
在线时间
541 小时
发表于 2018-4-3 17:09:35 | 显示全部楼层
肯定是不变的,每个任务和主函数一样,并且是这次执行哪里,等任务切换回来还是执行那里
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 18:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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