当前位置: 首页 > news >正文

go 的使用总结

go的内存逃逸?

go语言在编辑阶段通过逃逸分析把分配在栈上变量 分配到堆上去。

栈内存: 一段连续的内存,便于高效运行指令过程中的临时变量存储。

堆内存: 主要由垃圾回收器  回收没有被引用的指针。

逃逸分析:栈内容效率更高,指针作为函数的返回值时,一定会发生逃逸,逃逸到堆内存的变量不会被马上回收,只能通过GC 标记清除,因此尽量避免内存逃逸。

逃逸分析可以判断一个变量是分配在栈内存 还是堆内存。

go build -gcflags="-m -l" demo.go

-m 打印出逃逸分析信息

-l 禁止内联 更好的观察逃逸

go 语言中 = 与 := 的区别?

=是赋值语句, 在声明的时候赋值

:= 是声明类型并赋值,自动匹配变量类型  可以不用声明

= 要和var 关键字一起使用, var可以在函数中使用 也可以在函数外使用

:= 只能在函数中使用,只能定义局部变量

用var 定义 赋值以后 还可以改变, 用 := 定义的变量不能改变。

http://www.lryc.cn/news/308077.html

相关文章:

  • 无线水电表智能化管理系统
  • 发掘效率黑科技:Allure报告助您事半功倍提升测试效能!
  • Spring Web 过滤器使用常见错误(上)
  • 【数据结构】周末作业
  • java 企业培训管理系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目
  • 在SAP HANA中使用OData(二)
  • 【Docker】前端基于dockerfiel构建镜像部署,实现在容器启动时传递环境变量, 请求不同服务地址
  • 评估测试接口软件与网站的使用方法及优劣势比较
  • 【Qt学习】QLineEdit 控件 属性与实例(登录界面,验证密码,正则表达式)
  • Spring Boot 和 Spring Cloud: 区别与联系
  • 9.网络游戏逆向分析与漏洞攻防-游戏网络架构逆向分析-接管游戏连接服务器的操作
  • vue - - - - - vue3使用draggable拖拽组件
  • PHP语言常见面试题:请解释一下PHP是什么,以及它的主要用途是什么?
  • Unity(第六部)向量的理解和算法
  • TypeScript+React Web应用开发实战
  • android开发电子书,android基础编程
  • 2024-02-25 Unity 编辑器开发之编辑器拓展6 —— Event
  • DC-DC降压芯片用于直流充电桩,具备3A的输出电流能力,输入电压6~40VDC——D2576
  • 4-如何进行细分市场的分析-02 细分行业的构成和基本情况
  • L1-023 输出GPLT(PTA)
  • 【JavaEE进阶】 Spring AOP快速上手
  • android应用开发基础知识,安卓面试2020
  • unity-unity2d基础操作笔记(一)0.5.0
  • 东芝工控机维修东芝电脑PC机维修FA3100A
  • AI新秀Mistral:“Open AI“ 新时代
  • Dockerfile制作镜像
  • 如何在宝塔面板中设置FTP文件传输服务并实现远程文件管理
  • 记录 | 设置容器内外时间一致
  • LeetCode 239 滑动窗口最大值
  • Vue单文件组件(SFC)规范