为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

3 回答

所以 一般加个锁。 synchronized

0 回复 有任何疑惑可以回复我~
#1

疯子520520

是同步···
2016-08-01 回复 有任何疑惑可以回复我~

如果两个线程 threadA和 threadB分别开始执行初始化:

threadA: if (instance == null) 是真,然后进入条件区里面里面,在它还没有到初始化那一步的时候,跳到 threadB:这时(instance==null)对threadB仍然是真,于是也进入到条件区里面。接下来 threadA和threadB接下来先后执行instance = new ... 就会分别给两个线程两个不同的instance了。

6 回复 有任何疑惑可以回复我~

建议你看一下多线程的相关课程

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
模式的秘密---单例模式
  • 参与学习       74402    人
  • 解答问题       108    个

单例模式是在Java中最重要模式之一,让我们揭开单例模式神秘面纱

进入课程
意见反馈 帮助中心 APP下载
官方微信