go 49 分布式事务 1 channel 6 goroutine 8 map 2 GMP 1 值拷贝 2 垃圾回收 3 设计模式 8 并发编程 5 singleFlight 1 waitgroup 1 go-zero教程 8 docker-compose 7 etcd 2 服务注册 1 服务发现 1 prometheus 1 grafana 1 服务监控 1 分布式锁 1 链路追踪 1 redis 3 单元测试 1 消息队列 1 socket编程 1 前端 1 grpc 3 1 工具 1 mysql 1 命令行 1 answer 1
技术

go堆栈逃逸分析垃圾回收

堆栈一般堆栈栈一般由操作系统来分配和释放,堆由程序员通过编程语言来申请创建与释放。栈用来存放函数的参数、返回值、局部变量、函数调用时的临时上下文等,堆用来存放全局变量。我们可以这样理解数据存放的规则: 逃逸分析,垃圾回收...

继续阅读
技术

golang的内存管理

1、内存管理内存管理是管理计算机内存的过程,在主存和磁盘之间移动进程以提高系统的整体性能。内存管理的基本要求是提供方法来根据程序的请求动态的将部分内存分配给程序,并在不需要时释放它以供重用。程序通过将 内存管理,堆栈,垃...

继续阅读
技术

golang垃圾回收

文中提到的垃圾回收算法是基于go1.16之后的,让我们直接进入正题吧。1、什么时候需要垃圾回收?Go更喜欢在堆栈上分配内存,因此大多数内存分配最终都会在栈上。这意味着Go每个goroutine都有一个 golang,垃圾...

继续阅读