博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
单例模式 双重检查
阅读量:6225 次
发布时间:2019-06-21

本文共 660 字,大约阅读时间需要 2 分钟。

多线程并发访问单利模式需要双重检查,以防出现实例化两次Singleton实例的情形,如果是数据库连接池,初始化两次会导致第一次数据库连接已经使用,第二次发生异常错误。

 

方案一

class Singleton{    private static Singleton singleton;        private Singleton(){}        public static Singleton getInstance(){        if(singleton == null){            synchronized(Singleton.class){                if(singleton == null)                    singleton = new Singleton();            }        }        return singleton;    }}

 

方案二

class Singleton {    private static Singleton singleton = new Singleton();    private Singleton () {}    public static Singleton getInstance() {        return singleton;    }}

 

转载于:https://www.cnblogs.com/webglcn/p/10605235.html

你可能感兴趣的文章
TreeView控件应用(包含递归调用)
查看>>
Android中文API(95)——SimpleExpandableListAdapter
查看>>
国内的机器视觉技术行业发展趋势分析
查看>>
Oracle中的nvl函数
查看>>
云场景实践研究第86期:美甲帮
查看>>
使用Windows远程桌面(mstsc)通过RDP协议访问Ubuntu/Debian服务器
查看>>
LeetCode - 4. Median of Two Sorted Arrays
查看>>
浅谈活动目录域名称空间设计
查看>>
如何写好一封邮件
查看>>
CUDA学习(十八)
查看>>
关于 Windows 7 的 200M 引导卷
查看>>
项目经理之初为项目经理
查看>>
C语言结构指针传递结构内容
查看>>
Python过渡性模块重载(递归重载模块)
查看>>
mysql错误信息的利用
查看>>
MyEclipse启动失败现象以及解决办法
查看>>
Vmware vSphere常见问题汇总(四)
查看>>
反编译Silverlight项目
查看>>
Serving websites from svn checkout considered harmful
查看>>
迁移SVN注意事项及操作方法
查看>>