千家信息网

Go并发的Once怎么使用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"Go并发的Once怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Go并发的Once怎么使用"吧!// 多次调用仅执行一次指
千家信息网最后更新 2026年11月01日Go并发的Once怎么使用

这篇文章主要讲解了"Go并发的Once怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Go并发的Once怎么使用"吧!

// 多次调用仅执行一次指定的函数 ffunc (o *Once) Do(f func())

例的fooOnce函数只执行一次打印。

func fooOnce(){  fmt.Println("只会执行一次")}func main() {  var once sync.Once  done := make(chan int)  for i := 0; i < 10; i++ {    go func(index int) {            once.Do(fooOnce)      done <- index    }(i)  }  for i := 0; i < 10; i++ {    fmt.Println("接手到的数据",<-done)  }}

单例模式

package mainimport (  "fmt"  "sync")type Singleton struct {}var singleInstance *Singletonvar once sync.Oncefunc GetSingletonObj() *Singleton {  once.Do(func() {    fmt.Println("Create object")    singleInstance = new(Singleton)  })  return singleInstance}func main() {  var wg sync.WaitGroup  for i := 0; i < 10; i++ {    wg.Add(1)    go func() {      obj := GetSingletonObj()      fmt.Printf("%p\n", obj)      wg.Done()    }()  }  wg.Wait()}

感谢各位的阅读,以上就是"Go并发的Once怎么使用"的内容了,经过本文的学习后,相信大家对Go并发的Once怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

学习 内容 函数 就是 思路 情况 数据 文章 更多 模式 知识 知识点 篇文章 跟着 问题 实践 推送 研究 验证 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技海报 喔噻互联网科技有限公司 圆梦互联网科技 中国互联网科技发展 互联网科技logo设计 四川狮子座互联网科技 居家互联网科技有限公司 哈尔滨秒房互联网科技有限公司 现代科技和互联网有关系吗 互联网之后的科技是什么 阿里互联网科技公司 互联网与医疗科技 互联网媒体平台算高科技产业 互联网金融科技公司的优势 江苏互联网智能科技软件 互联网科技包装股份有限公司上市 萌小萌互联网科技河南有限公司 广西科技产业互联网是什么 安徽零酒互联网科技有限公司 山东亿川互联网科技有限责任公司 有格互联网科技 互联网科技巨头监管 今日互联网科技 互联网 卓越科技 互联网科技中介 承德科技产业互联网发展 南山科技园互联网公司有哪些 宁夏众和广鑫互联网科技有限公司 浙南科技城互联网大厦建设工程 中国新注册互联网科技
0