package main
// once 只执行一次,底层实现:应用互斥锁机制
import (
"sync"
"fmt"
)
var once sync.Once // 返回一个结构体指针类型
func fun1(endNum int) {
res := 0
for i :=0; i <= endNum; i++ {
res += i
}
fmt.Println("res:", res)
}
func main() {
endNum := 100
// Do 函数接受一个无参数函数作为输入
once.Do(func(){ fun1(endNum) })
}
golang sync.Once
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。