美文网首页
Go的单例模式

Go的单例模式

作者: 本分撸码投资 | 来源:发表于2021-03-07 15:05 被阅读0次
package singleton

import (
    "fmt"
    "sync"
    "testing"
    "unsafe"
)
type Singleton struct {

}
var singleInstance *Singleton
var once sync.Once

func GetSingletonObj() *Singleton {
    once.Do(func() {
        fmt.Println("create Obj")
        singleInstance = new(Singleton)

    })
    return singleInstance
}
func TestGetSingletonObj(t *testing.T) {
    var wg sync.WaitGroup
    for i := 0; i < 10; i++ {
        wg.Add(1)
        go func() {
            obj:= GetSingletonObj()
            fmt.Println("obj")
            fmt.Printf("%x\n", unsafe.Pointer(obj))
            wg.Done()
        }()
    }
    wg.Wait()
}

相关文章

  • Go语言设计模式(1)单例模式

    Go语言设计模式(1)单例模式 单例模式的定义 个人认为单例模式是23种设计模式中最简单也最好理解的一种,定义如下...

  • 单例模式(Go)

    单例模式是23种面向对象的设计模式之一。在实际应用中,涉及到配置或资源管理的对象,都应该考虑单例模式。广义上讲,只...

  • Go单例模式

    单例模式回顾 以前在做java的时候,经常会用到设计模式,如单例模式、工厂模式、观察者模式等。其实设计模式和语言无...

  • go设计模式代码实现

    go 设计模式代码实现 单例模式 代码实现 type singleton struct{} var ins *si...

  • Go的单例模式

  • 【设计模式】单例模式

    单例模式 常用单例模式: 懒汉单例模式: 静态内部类单例模式: Android Application 中使用单例模式:

  • Android设计模式总结

    单例模式:饿汉单例模式://饿汉单例模式 懒汉单例模式: Double CheckLock(DCL)实现单例 Bu...

  • gof23创建类模式(golang版)

    区块链的征程已开启 单例模式 Java中的单例模式的实现可以有饿汉式、懒汉式、双锁、静态内部类、枚举等形式,在go...

  • Telegram开源项目之单例模式

    NotificationCenter的单例模式 NotificationCenter的单例模式分析 这种单例模式是...

  • Go语言:单例模式

    转载至 https://www.yuque.com/docs/share/17c247e8-961d-4cb1-a...

网友评论

      本文标题:Go的单例模式

      本文链接:https://www.haomeiwen.com/subject/czhyqltx.html