[Go] freecache 设置 SetGCPercent 的作用

你需要对 freecache 有一个大致了解,freecache 的内存空间是预分配的。

假设你的程序占用了 50M 内存,那么开启 freecache 预分配 200M 空间,总共下来就是 250M 空间被占用。

SetGCPercent 的作用是设置垃圾回收比例,简单来说,新插入数据比例占旧数据比例达到设置值时,启动 GC。

负百分比将禁止 GC。

举个例子:

假设 SetGCPercent 设置了 20,那么当缓存量达到 20% * 200M = 40M 时会启动 GC。

结论:设置的缓存容量越高,SetGCPercent 设置的也要越高,以便于及时 GC。

Ref:https://github.com/gopher-lego/skeleton

Link:https://www.cnblogs.com/farwish/p/13039953.html

原文地址:https://www.cnblogs.com/farwish/p/13039953.html