一氧化碳中毒

注册

 

发新话题 回复该主题

GoCN酷Go推荐Goroutine [复制链接]

1#

推荐goleak的背景

goroutine作为golang并发实现的核心组成部分,非常容易上手使用,但却很难驾驭得好。我们经常会遭遇各种形式的goroutine泄漏,这些泄漏的goroutine会一直存活直到进程终结。它们的占用的栈内存一直无法释放、关联的堆内存也不能被GC清理,系统的可用内存会随泄漏goroutine的增多越来越少,直至崩溃!

goroutine的泄漏通常伴随着复杂的协程间通信,代码评审和常规的单元测试通常更专注于业务逻辑正确,很难完全覆盖goroutine泄漏的场景;而pprof等性能分析工具更多是作用于监控报警/故障之后的复盘。我们需要一款能在编译部署前识别goroutine泄漏的工具,从更上游把控工程质量。

goleak(

分享 转发
TOP
发新话题 回复该主题