问题
因为业务问题,最近参考fasthttp写了一份协程池workerpool.go
在测试的时候突发奇思妙想来测一下有没有内存泄露的问题
凭着多年C语言的受苦经历,直觉告诉我,在模拟并发后内存应该恢复到并发前的水平
实际是,并发结束后内存居高不下,让我一度认为是我写的协程池内存泄漏了,经过反复测试后,我发现同一段代码,直接同步调用和使用goroutine调用,后者也出现了内存无法回收的问题(无论runtime.gc()多少次)。
原因
互联网真好,这里的大佬个个都是人才,说话又好听,我超喜欢这里的!
直接上原文吧
省流
撑大了,缩减不回去了
解决办法
洗洗睡吧