6、多线程之单例模式

6、多线程之单例模式

6、多线程之单例模式

 

 

原先的单例模式在多线程环境下已经不再适应,那么该怎么办呢??

答:

(1)使用双重锁定实现线程安全的单例模式

 6、多线程之单例模式

 

(2)静态初始化单例模式

 6、多线程之单例模式

 

直接实例化Singleton对象,在GetInstance方法中直接返回_Instance对象

 

我们知道,静态成员只初始化一次,也就是说_Instance在第一次访问该类就实例化,所以Singleton类第一次被访问的时候,就完成了Singleton类的实例化,而且只被实例化一次,通过这种方式,也能保证多线程环境下的单例模式

 

 

勘正:请注意,图中Singleton的无参构造函数应该声明为private!!!!!!!!!!!!!!!!!!!!!!

相关文章:

  • 2022-01-18
  • 2021-10-04
  • 2021-07-29
  • 2021-11-10
  • 2019-10-10
  • 2018-11-04
  • 2021-11-05
猜你喜欢
  • 2022-01-11
  • 2022-12-23
  • 2021-10-25
  • 2022-12-23
  • 2022-02-08
  • 2022-02-12
  • 2021-07-29
相关资源
相似解决方案