MyException - 我的异常网
当前位置:我的异常网» J2SE » 线程和单例有关问题

线程和单例有关问题

www.MyException.Cn  网友分享于:2013-01-25  浏览:6次
线程和单例问题!
1.在一个时刻点上一个JVM同时运行多个线程吗?

public class A {
private static A instance;

private A() {
}

public static A getInstance() {
if (instance == null) {
instance = new A();
}
return instance;
}

}
当在很短的一段时间内有大量的线程同时调用A.getInstance()方法时,能确保内存中只有一个A的实例吗?

------解决方案--------------------
要看你的电脑是否是双cup或多核 单核的同一时钟点上只有一个线程在运行,它的多线程是交替运行实现的.
双cup或多核就可以达到同步运行...一个java程序启动时,最少启动了两个线程 main线程 和 垃圾处理机制
兄弟刚学了点...知道的不多,..
------解决方案--------------------
在一个时间点上,只有一个线程在运行。是一种并发! 如果你是双核的cpu 就能做到真正的并行了
------解决方案--------------------
1.在一个时刻点上一个JVM同时运行多个线程吗?
多CPU是可以的

当在很短的一段时间内有大量的线程同时调用A.getInstance()方法时,能确保内存中只有一个A的实例吗?
不能确保,因为可能某个线程进入if (instance == null) {判断后,可能CPU被收回了,换下一个线程执行,假设另一个线程,进入if (instance == null)判断后,执行instance = new A(); 然后系统把CPU回收交回给之前的某个线程,那么之前的某个线程会直接执行instance = new A(); 也就像instance = new A(); 可能被执行多次,内存中确实是只有一个A的实例,但是这个实例被变更过了,如果这个实例有状态的话,状态就不一定正确了。



------解决方案--------------------
这也是我对单例模式的疑惑,我想一般情况还是单例的吧,,内存中只有一个实例吧,,

文章评论

5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
程序员应该关注的一些事儿
程序员应该关注的一些事儿
程序员和编码员之间的区别
程序员和编码员之间的区别
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
老程序员的下场
老程序员的下场
一个程序员的时间管理
一个程序员的时间管理
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
那些争议最大的编程观点
那些争议最大的编程观点
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
中美印日四国程序员比较
中美印日四国程序员比较
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
代码女神横空出世
代码女神横空出世
程序员的鄙视链
程序员的鄙视链
每天工作4小时的程序员
每天工作4小时的程序员
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
总结2014中国互联网十大段子
总结2014中国互联网十大段子
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
为什么程序员都是夜猫子
为什么程序员都是夜猫子
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
鲜为人知的编程真相
鲜为人知的编程真相
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
程序员必看的十大电影
程序员必看的十大电影
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
漫画:程序员的工作
漫画:程序员的工作
编程语言是女人
编程语言是女人
我的丈夫是个程序员
我的丈夫是个程序员
程序员都该阅读的书
程序员都该阅读的书
旅行,写作,编程
旅行,写作,编程
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
如何成为一名黑客
如何成为一名黑客
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有