github.com/songzhibin97/gkit@v1.2.13/container/group/example_test.go (about) 1 package group 2 3 func createResources() interface{} { 4 return map[int]int{} 5 } 6 7 func createResources2() interface{} { 8 return []int{} 9 } 10 11 var group LazyLoadGroup 12 13 func ExampleNewGroup() { 14 // 类似 sync.Pool 一样 15 // 初始化一个group 16 group = NewGroup(createResources) 17 } 18 19 func ExampleGroup_Get() { 20 // 如果key 不存在 调用 NewGroup 传入的 function 创建资源 21 // 如果存在则返回创建的资源信息 22 v := group.Get("test") 23 _ = v 24 } 25 26 func ExampleGroup_ReSet() { 27 // ReSet 重置初始化函数,同时会对缓存的 key进行清空 28 group.ReSet(createResources2) 29 } 30 31 func ExampleGroup_Clear() { 32 // 清空缓存的 buffer 33 group.Clear() 34 }