type Group
组表示一类工作,并形成一个名称空间,其中的工作单元可以执行重复抑制
type Group struct {
// contains filtered or unexported fields
}
// Do执行并返回给定函数的结果,确保每次对给定键只执行一次。
// 如果传入一个重复的调用者,重复的调用者将等待原始调用者完成并接收相同的结果
// 返回值shared表示是否将v分配给了多个调用者
func (g *Group) Do(key string, fn func() (interface{}, error)) (v interface{}, err error, shared bool)
// 取消对一个建的缓存,再次执行 Do 会真实调用实质函数
func (g *Group) Forget(key string)