go 单例模式

go 单例模式

//单例模式
//确保并发的情况下,让某段代码只会被执行一次
var (
	name *gzhsinit1
	//调用并发只执行一次的模块 sync,这个once应该是一一对应的,多个单例模式的时候不能共用一个once,否则会阻塞影响
	once sync.Once
)
//这里返回值是 指针,可以加速代码速度。
func dlmsinit1() *gzhsinit1{
	//当用到sync模块的Do函数,并发的时候小括号内部的代码只运行一次
	once.Do(func() {
		if name == nil {
			name = gzhsinit3()
		}
	})
	return name
}
posted @   liwenchao1995  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示