线程安全的单例模式
来源:互联网 发布:网天概预算软件 编辑:程序博客网 时间:2024/06/10 11:36
public class SafeLazyInitialization { private static Resource resource; public synchronized static Resource getInstance() { if (resource == null) resource = new Resource(); return resource; }}
public class EagerInitialization { private static Resource resource = new Resource(); public static Resource getResource() { return resource; } }
//延迟初始化public class ResourceFactory { private static class ResourceHolder { public static Resource resource = new Resource(); } public static Resource getResource() { return ResourceHolder.resource ; }}
public class SingletonDemo { //注意需要volatile private static volatile SingletonDemo instance = null; private SingletonDemo() { } public static SingletonDemo getInstance() { if (instance == null) { //二次检查,比直接用独占锁效率高 synchronized (SingletonDemo .class){ if (instance == null) { instance = new SingletonDemo (); } } } return instance; }}
阅读全文
0 0
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式
- Volatile 线程安全的单例模式
- 线程安全的单例模式
- 基于线程安全的单例模式
- 线程安全的单例模式
- 单例模式的线程安全
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式
- 线程安全的单例模式 [老生常谈]
- java线程安全的单例模式
- 线程安全的单例模式
- + 线程安全的单例模式
- NDK 积累 1(如何移植C++程序)
- PHP的学习--连接MySQL的三种方式
- 1257 最少拦截系统【LIS+二分】
- leetcode--Climbing Stairs
- 服务器操作系统该选 Debian/Ubuntu 还是 CentOS?
- 线程安全的单例模式
- heapsort(堆排序)的代码实现
- RT-Thread在STM32F100C8上的移植
- 自定义类的比较
- Unity材质动画
- 监督学习二 回归和分类
- GPU如何工作
- iOS C语言之指针
- BIN,BCD,ASCII码的区别