硬汉嵌入式论坛

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

关于局部变量的耗时问题

[复制链接]

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2017-5-19 13:52:59 | 显示全部楼层 |阅读模式
有些函数程序中会被频繁调用,函数里面有一些局部变量;
我们知道局部变量所占用的内存在调用函数时被申请,退出函数时被释放,
想问的是申请和释放局部变量内存的时候会不会占用CPU时间?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106771
QQ
发表于 2017-5-19 14:07:24 | 显示全部楼层
局部变量的申请释放比较简单,调整下栈指针就好了,不怎么占用时间。

而函数嵌套等方式,造成的寄存器入栈和出栈占用些时间。
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
 楼主| 发表于 2017-5-21 16:42:25 | 显示全部楼层
对于偶尔调用的函数浪费点儿时间倒也罢,但如果是每个ms都会调用的函数,那就不得不考虑这个时间了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106771
QQ
发表于 2017-5-22 01:32:21 | 显示全部楼层

回 云琴箫龙 的帖子

云琴箫龙:对于偶尔调用的函数浪费点儿时间倒也罢,但如果是每个ms都会调用的函数,那就不得不考虑这个时间了 (2017-05-21 16:42) 
这都是正常开销,时间很短暂的,可以忽略,现在CM系列内核支持一半的寄存器自动入栈,其余的都是编译器优化入栈,非常迅速的。这些都不用担心。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-5 14:01 , Processed in 0.216280 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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