关于java中容器内外并发编程的疑问 并发编程java多线程jvm 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 启动线程的个数应等于cpu核数?什么意思 效率高低,不在于一个进程中是否存在其他线程,而在于其他线程都在干什么。JVM进程启动的时候,一个进程中就已经启动了很多个线程了,其中包含垃圾回收线程。如果进程中其他线程,都在做CPU密集型的任务,那么,你再做几个线程也来抢CPU的运行时间片,总的执行效率当然会降低。但是,这种情况下,如果新建进程做CPU密集型任务,效率就会提高一些,因为你是在和其他进程抢CPU的时间片,而不是抢一个进程中的CPU时间片。进程是系统资源分配的最小单位。Tomcat容器里面会有线程池,但是,这些线程,通常情况下(没有负载时)都处于阻塞状态,如果有大量用户访问了上面的站点项目,或者,上面项目中有频繁的后台任务在执行,占用了较高的CPU使用频率,那么,最好的解决办法,就是换台服务器或者等服务器负载较低的时候,再执行CPU密集型的运算任务。 总体来说,就是要着眼于整个系统的大环境下,而不要纠结于一个进程之内。比如,我有一个双核CPU的电脑,在上面并发执行四个几十G的视频转码任务,同时,再执行楼主的多线程CPU密集型任务。你觉得,后面的任务,能用多高的效率?再比如,同样的电脑,上面已经运行了将近一千个进程,(随便装他几十个大型应用类软件,再把所有的后台服务都启动,数量就差不多了),这个时候,启动一个JVM,再运行CPU密集型运算,这时的效率肯定也会有些偏低,因为,操作系统当前环境中的进程数量太多,进程切换、线程切换也要占一定的资源,从而影响CPU的使用。当然,这种极端的现象因人而异(是因机器而异),有很多人都不相信,以前单核、双核笔记本,实际使用中就会出现这种瓶颈。 面向对象 大家来看下,RandomAccessFile问题...急! 关于Iterator遍历器,不懂! JAVA中接口与抽象类的问题 问个蛮苕的问题,java 1.1绘图支持透明效果吗? 排序算法求助,急! 一个关于继承内部类的小问题 ◎◎◎◎◎◎ 散分提问,在线等 ◎◎◎◎◎◎ jbuilder6的一个菜鸟问题,急! 大家是怎样提高类设计能力的,现在觉得好的类设计比编码要重要和困难。 大神何在,小弟来求教了 求助,为什么覆写的paintComponent没调用?
JVM进程启动的时候,一个进程中就已经启动了很多个线程了,其中包含垃圾回收线程。
如果进程中其他线程,都在做CPU密集型的任务,那么,你再做几个线程也来抢CPU的运行时间片,总的执行效率当然会降低。
但是,这种情况下,如果新建进程做CPU密集型任务,效率就会提高一些,因为你是在和其他进程抢CPU的时间片,
而不是抢一个进程中的CPU时间片。进程是系统资源分配的最小单位。
Tomcat容器里面会有线程池,但是,这些线程,通常情况下(没有负载时)都处于阻塞状态,如果有大量用户访问了上面的站点项目,或者,上面项目中有频繁的后台任务在执行,占用了较高的CPU使用频率,那么,最好的解决办法,就是换台服务器或者等服务器负载较低的时候,再执行CPU密集型的运算任务。
比如,我有一个双核CPU的电脑,在上面并发执行四个几十G的视频转码任务,同时,再执行楼主的多线程CPU密集型任务。
你觉得,后面的任务,能用多高的效率?
再比如,同样的电脑,上面已经运行了将近一千个进程,(随便装他几十个大型应用类软件,再把所有的后台服务都启动,数量就差不多了),这个时候,启动一个JVM,再运行CPU密集型运算,这时的效率肯定也会有些偏低,因为,操作系统当前环境中的进程数量太多,进程切换、线程切换也要占一定的资源,从而影响CPU的使用。当然,这种极端的现象因人而异(是因机器而异),有很多人都不相信,以前单核、双核笔记本,实际使用中就会出现这种瓶颈。