/**
* 线程安全的懒汉式
*/
class Bank {
private Bank() {};
private static Bank instance = null;
public static Bank getInstance() {
// 方式1:效率稍差。原因是当对象创建成功后,之后调用都需要等待
// synchronized (Bank.class) {
// if (instance == null) {
// instance = new Bank();
// }
// return instance;
// }
// 方式二:
if (instance == null) {
synchronized (Bank.class) {
if (instance == null) {
instance = new Bank();
}
}
}
return instance;
}
}
线程安全的单例模式-懒汉式
最新推荐文章于 2024-10-06 20:16:20 发布
这篇博客介绍了Java中实现线程安全的懒汉式单例模式的两种方法。第一种是全程同步,虽然确保了线程安全,但效率较低。第二种是双检锁(DCL,Double-Check Locking),在保证线程安全的同时提高了效率,只有在实例为null时才进行同步创建。
摘要由CSDN通过智能技术生成