- 标签:
- Python (2)
- 技术见闻 (1)
- 效率提升 (1)
- chatGPT (1)
- MidJourney (1)
- WakaTime (1)
- aria2 (1)
- mac (1)
- github (1)
- coding (1)
- devOps (1)
- kubernetes (4)
- CI (1)
- Jenkins (2)
- nginx (1)
- Git (2)
- Go (3)
- leetcode (1)
- Load Blance (1)
- Golang 原理 (2)
- Golang GC (1)
- kafka (2)
- k8s (1)
- Golang 基础 (6)
- mirror (1)
- 镜像源 (1)
- Gin (2)
- Golang 底层 (1)
- Golang scheduler (1)
- WebSocket (1)
- RTSP (1)
- mircoservices (2)
- go-mirco (2)
- 秒杀系统 (1)
- Python基础知识 (1)
- MySQL技巧 (1)
- Python模块包 (2)
- Pandas (1)
- 科学计算 (2)
- 数据分析 (2)
- Numpy (1)
- MySQL配置 (1)
- Linux命令 (1)
- Keel (1)
- NotionNext (1)
- hugo (1)
- blog (1)
- notion (2)
- 转载 (1)
- 跳槽 (1)
- 香港 (1)
- Golang 技法 (1)
原文链接 https://mp.weixin.qq.com/s/TO_lmlFbVDgFmns9s_mMzw 程序中的数据和变量都会被分配到程序所在的虚拟内存中,内存空间包含两个重要区域 — 栈区(Stack)和堆区(Heap)。函数调用的参数、返回值以及局部变量大都会被分配到栈上,这部分内存会由编译器进行管理;不同编程语言使用不同的方法管理堆区的内存,C++ 等编程语言会由工程师主动申请和释放内存,Go 以及 Java 等编程语言会由工程师和编译器共同管理,堆中的对象由内存分配器分配并由垃圾收集器回收。 不同的编程语言会选择不同的方式管理内存,本节会介绍 Go 语言内存分配器,详细分析内存分配的过程以及其背后的设计与实现原理。