参考博客:http://www.2cto.com/kf/201310/249105.html

1、懒汉模式:每一次调用都要对方法进行加锁,要维护锁会导致性能损耗,其实不需要每次进入方法都加锁,只需要第一次进入的时候防止多个线程产生多个单例即可。所以只需要在new Singleton处加锁即可,由此引出第二种模式,双重锁定模式。

Android单例模式/

2、双重锁定模式:第一次生成完实例以后就直接返回实例,不需要对方法进行加锁,解决了多余的同步问题。但是由于jvm的加载机制的无序,会导致出现失效的情况,所以使用第三种模式。 

Android单例模式

(3)静态内部类模式:由于静态内部类第一次被调用时才会加载,既可以保证线程安全,也延迟了单例的实例化。

Android单例模式


相关文章:

  • 2021-08-14
  • 2021-10-24
  • 2021-07-20
  • 2021-10-29
  • 2021-11-27
  • 2022-12-23
  • 2021-09-21
  • 2022-02-21
猜你喜欢
  • 2021-08-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案