一个通用的 Golang 对象池
Go Commons Pool 是一个通用对象池,直接翻译自 Apache Commons Pool。
| 选项 | 默认值 | 描述 |
|---|---|---|
| LIFO | true | 如果池为 LIFO(最后进,先出) |
| MaxTotal | 8 | 池的上限 |
| MaxIdle | 8 | 池中最大的“空闲”实例数 |
| MinIdle | 0 | 池中最小的“空闲”实例数 |
| TestOnCreate | false | 创建对象时验证 |
| TestOnBorrow | false | 借用对象时验证 |
| TestOnReturn | false | 返回对象时验证 |
| TestWhileIdle | false | 对象处于空闲状态时验证,请参见 TimeBetweenEvictionRuns |
| BlockWhenExhausted | true | 当池耗尽时是否阻塞 |
| MinEvictableIdleTime | 30m | 回收配置,请参见 DefaultEvictionPolicy |
| SoftMinEvictableIdleTime | math.MaxInt64 | 回收配置,请参见 DefaultEvictionPolicy |
| NumTestsPerEvictionRun | 3 | 每次运行回收程序 goroutine 期间要检查的对象的最大数量 |
| TimeBetweenEvic |
暂无开放 Issues,或尚未同步最近议题。