扫码订阅《 》或
入驻星球
,即可阅读文章!
在此填写券码订阅!
订阅
GOLANG ROADMAP
阅读模式
沉浸
自动
日常
首页
Go学习
Go学院
Go小课
Go视界
Go小考
Go实战
Go资源
优质课程
在线宝典
资源下载
帮找资源
训练营 🔥
Go体系课&实战训练营
升值加薪陪跑训练营
Go求职
求职刷题
企业题库
面试宝典
求职面经
求职服务
内推互助
求职助力
内推公司
Go友会
城市
校园
推广返佣
返佣排行
返佣规则
推广学院
实验区
Go周边
Go宝典
推荐图书
精品博文
Go开源
Go仓库
Go月刊
更多
用户中心
我的信息
我的返佣
我的消息
玩转星球
星球介绍
星主权益
吐槽专区
成长记录
合作交流
商务合作
讲师招募
生态伙伴
扫码订阅《 》或
入驻星球
,即可阅读文章!
在此填写券码订阅!
订阅
32.栈的内存是怎么分配的?
面试宝典
栈的内存是怎么分配的?
栈和堆只是虚拟内存上2块不同功能的内存区域:
栈在高地址,从高地址向低地址增长。
堆在低地址,从低地址向高地址增长。
栈和堆相比优势:
栈的内存管理简单,分配比堆上快。
栈的内存不需要回收,而堆需要,无论是主动free,还是被动的垃圾回收,这都需要花费额外的CPU。
栈上的内存有更好的局部性,堆上内存访问就不那么友好了,CPU访问的2块数据可能在不同的页上,CPU访问数据的时间可能就上去了。