java多线程使用cup是什么机制 java获得cup使用权采用的抢占机制,使用cup的时候是分时机制,这句话对不对?多线程使用cup和使用的操作系统有关还是java机制有关(xp是什么机制) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Java里多线程是分时机制。不同操作系统不同实现,有按照静态优先级的,也有按照动态优先级的。XP是动态优先级抢占的 多线程应该和操作系统有关,与语言无关。window是实时分时 以前的老java自己实现了线程库,也就是说java的线程并不和操作系统的线程对应,jvm在操作系统上面是一个进程,当这个进程被操作系统调度到后,jvm内部实现的线程库再调度java线程,为什么是这样呢?考虑到以前的操作系统内核,比如linux,在以前都不直接支持线程,用户线程和内核线程是多对一的关系,solaris一度也是这样,所以java当然心有余而力不足了,你操作系统都不能完美支持线程,你让我实现不是难为我吗?在那个年代,java多线程的调度完全是自主的,操作系统根本不知道java是多线程的,调度策略完全自己实现,单cpu下肯定是分时的,多cpu下就看jvm会不会建立多cpu上的多jvm实例了。 到了后来,操作系统内核纷纷都支持了多线程(windows开始就支持),那么java也要考虑推卸一些责任了,这样java线程就和操作系统线程一一对应或多多对应了,这个时候,如果是一一对应,那么线程的调度完全交给了操作系统内核,当然jvm还保留一些策略足以影响到其内部的线程调度,举个例子,在linux下,只要一个Thread.run就会调用一个fork产生一个线程。 下面回答你的问题:问:java获得cup使用权采用的抢占机制,使用cup的时候是分时机制,这句话对不对?答:部分对,早期实现,基本可以实现抢占式,但是现代实现,如果系统不支持抢占,那么jvm也无所谓抢占了。问:多线程使用cup和使用的操作系统有关还是java机制有关(xp是什么机制)答:早期是java机制实现,现在大部分是操作系统实现的,java机制仅仅保留了相关策略从而影响调度;xp是基于优先级的抢占式调度,其性能很大程度依赖于动态优先级提升 求java程序编写练习题,最好是带点算法之类的题目,如"八皇后"之类的.. java与C++大对决!!!!!!!!!! 求助(接口怎么可以用来定义方法) 请教一个java.io.EOFException异常的解决 请 美女 gemouzhi(gemouzhi) 进来。socket问题。 在JAVA中怎样读word,excel文件 在一个程序中,如何每隔30秒便执行循环中的语句? 一个关于 JTable的问题 关于jdbc数据库连接,在不同的数据库下测试出现的问题。 100分的问题,请问各位高手,怎么做一个查询系统? 完全数如何用编程语言实现? 一个java类的问题
window是实时分时
到了后来,操作系统内核纷纷都支持了多线程(windows开始就支持),那么java也要考虑推卸一些责任了,这样java线程就和操作系统线程一一对应或多多对应了,这个时候,如果是一一对应,那么线程的调度完全交给了操作系统内核,当然jvm还保留一些策略足以影响到其内部的线程调度,举个例子,在linux下,只要一个Thread.run就会调用一个fork产生一个线程。
下面回答你的问题:
问:java获得cup使用权采用的抢占机制,使用cup的时候是分时机制,这句话对不对?
答:部分对,早期实现,基本可以实现抢占式,但是现代实现,如果系统不支持抢占,那么jvm也无所谓抢占了。
问:多线程使用cup和使用的操作系统有关还是java机制有关(xp是什么机制)
答:早期是java机制实现,现在大部分是操作系统实现的,java机制仅仅保留了相关策略从而影响调度;xp是基于优先级的抢占式调度,其性能很大程度依赖于动态优先级提升