白磊 发表于 2013-8-29 11:30
不可以的,你应该是还没有真正理解懒汉式单例产生线程问题的原因吧。
因为 if(s==null)
...
我自己懒汉式 public static Single getInstance() { return (s==null)?new Single():s; } 我想问的是我自己的写的懒汉式完全避免了多线程产生的原因 1.多个线程在操作共享的数据 2.操作共享数据的代码不止一条!(我只写了一条) 我用多线程运行测试的时候也没有问题, 请问这种做法到底行不行?如果不行,什么情况下会出错? |
月黑风高 发表于 2013-8-29 11:38
我自己懒汉式public static Single getInstance(){ return (s==null)?new Single():s;}
我想问 ...
白磊 发表于 2013-8-29 11:41
(s==null)?new Single():s 和 if()语句完成的效果是一样的啊 ,它可以说只是if else 语句的 ...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |