首页 单例

单例

  • 不使用synchronized和lock,如何实现一个线程安全的单例?(二)

    不使用synchronized和lock,如何实现一个线程安全的单例?(二)

    如果不那么挑剔,可以使用枚举、静态内部类和饿汉模式来实现单例模式。见:不用synchronized和lock,如何实现线程安全的单例? 然而,上述方法也用于底层synchronized,那么有没有办法不用呢?synchronized和lock,如何实现线程安全的单例?答案是肯定的,那就是CAS。关于CAS,我的博客里有一篇专门介绍他的文章,很多乐观锁都是基于的CAS实现。这里简单介绍一下,详情见 乐观锁的实现方式——CASCAS当多个线程尝试使用时,它是一种乐观的锁技术CAS同时,当更新相同的变量时,只有一个线...

    未命名 2022-04-10 629 3 线程安全单例
  • 不使用synchronized和lock,如何实现一个线程安全的单例?

    不使用synchronized和lock,如何实现一个线程安全的单例?

    不使用synchronized和lock,如何实现线程安全的单例?静态内部的是静态内部类和枚举。很好,这两种方法确实可以实现。枚举publicenumSingleton{INSTANCE;publicvoidwhateverMethod(){}}静态内部类publicclassSingleton{privatestaticclassSingletonHolder{privatestaticfinalSingletonINSTANCE=newSingleton();}privateSingleton(){}publi...

    黑客接单 2022-04-10 716 3 线程安全单例
1