设为首页 加入收藏

TOP

go lang中局部变量的内存分配
2019-03-11 00:07:58 】 浏览:78
Tags:lang 局部 变量 内存 分配

晚上在阅读go lang的资料时突然想到一个问题,go是如何分配变量的内存结构的呢?好在网上的一篇文章做了透彻的分析见【go语言局部变量分配在栈还是堆】。

  其结论是go语言局部变量的分配是由编译器决定的。go语言编译器会自动决定把一个变量放在栈还是放在堆,编译器会做逃逸分析(escape analysis),当发现变量的作用域没有跑出函数范围,就可以在栈上,反之则必须分配在堆。go语言声称这样可以释放程序员关于内存的使用限制,更多的让程序员关注于程序功能逻辑本身。


编程开发网
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇[Go] golang连接redis测试 下一篇filebeat 插件开发