多线程单件模式-Java
2008-03-01 22:33
295 查看
class Singleton ...{
private static Singleton instance;
private Singleton() ...{}
public static Singleton getInstance() ...{
if (instance == null) ...{ // 判断1
synchronized(instance) ...{ //加锁
if (instance == null) ...{ //判断2
instance = new Singleton();
}
}
}
return instance;
}
}
只有当第一次判断到为null的时候,才对对象加锁检查,这样是为了性能考虑。
加锁是为了解决同步的问题。
相关文章推荐
- java 实现支持多线程的单件模式
- 多线程安全的Singleton单件模式在C++,java与C#下的实现
- Java多线程编程环境中单例模式的实现
- java设计模式之单件模式Singleton
- java中多线程通信实例:生产者消费者模式
- Java 多线程下的单例模式
- Java 多线程 生产者—消费者 通用模式(synchronized已被Lock替代!)
- Java 多线程(四)—— 单例模式
- JAVA多线程编程设计模式:Half-sync/Half-async(半同步/半异步)模式
- Java设计模式(二):单例模式的5种实现方式,以及在多线程环境下5种创建单例模式的效率
- java 设计模式之单例模式(单线程、多线程下)
- JAVA多线程(七)模式-Producer Consumer
- java 多线程 Callable中的futrue模式
- 黑马程序员_java语言_多线程和设计模式
- Java 多线程编程环境中单例模式的实现
- 黑马程序员-Java基础-多线程之单例模式总结
- Java 多线程下的单例模式
- 浅析设计模式之单件模式 java 单例模式
- java 中多线程下的单例模式
- java多线程编程--工作线程模式《java多线程编程调试模式》