水木社区手机版
首页
|版面-Go编程语言(Golang)|
新版wap站已上线
返回
1/1
|
转到
主题:Go的GC是不是还是不行啊?
3楼
|
lichehuo
|
2021-04-30 22:12:48
|
展开
我前几天碰到内存没回收的情况。生产者定时生产一个数组,消费者收到即刻消费这个数组。当然由于粗心,生产者的数组一直在累加而不是循环开始清空状态,这样消费端内存慢慢的就炸了。看了pprof是这个消费端在数组里面数据量大占用几百m的时候,gc不了,手动在代码里runtime.gc也不回收。修复了生产者端的问题,消费端内存就正常了。
【 在 fork 的大作中提到: 】
: 看这个
https://dgraph.io/blog/post/manual-memory-management-golang-jemalloc/
:
: 通过cgo用jemalloc来管理内存,真的好折腾。
- 来自「最水木 for iPhone 8」
--
FROM 120.229.67.*
7楼
|
lichehuo
|
2021-05-01 12:48:29
|
展开
因为我是var定义的,不应该被回收吗
【 在 hongdiao 的大作中提到: 】
: 【 在 lichehuo 的大作中提到: 】
: : 我前几天碰到内存没回收的情况。生产者定时生产一个数组,消费者收到即刻消费这个数组。当然由于粗心,生产者的数组一直在累加而不是循环开始清空状态,这样消费端内存慢慢的就炸了。看了pprof是这个消费端在数组里面数据量大占用几百m的时候,gc不了,手动在代码里runtime.gc也不回收。修复了生产者端的问题,消费端内存就正常了。
: : :
: ....................
- 来自「最水木 for iPhone 8」
--
FROM 120.229.67.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版