java控制多核cpu的占用率
2015-06-27 23:28
1231 查看
测试机型配置如下:
让cpu占用率最高,只要让他时钟周期一直占用就可以了,但是我发现我的cpu是四线程的,i++的while循环只能让cpu工作在25%左右,这主要是因为只有一个线程在满负荷运行,100%分担到四个核心就只有25%了,在我开启两个线程的情况下,负荷在50%左右,如下图:
可以很清楚的看到只有两个核心是在满负荷工作,下图是开启全部四个核心:
Boush表示电脑卡的不行了,鼠标都动不了,费了好大的劲才截的图。。。。。。
老样子,附上代码!
package 编程之美;
public class CpuTest extends Thread {
public static void main(String[] args) {
CpuTest myThread1 = new CpuTest();
CpuTest myThread2 = new CpuTest();
CpuTest myThread3 = new CpuTest();
CpuTest myThread4 = new CpuTest();
myThread1.start();
myThread2.start();
myThread3.start();
myThread4.start();
}
public void run() {
int i = 0;
while(true){
i++;
}
}
}开两个进程就是50%!四个线程是100%。
让cpu占用率最高,只要让他时钟周期一直占用就可以了,但是我发现我的cpu是四线程的,i++的while循环只能让cpu工作在25%左右,这主要是因为只有一个线程在满负荷运行,100%分担到四个核心就只有25%了,在我开启两个线程的情况下,负荷在50%左右,如下图:
可以很清楚的看到只有两个核心是在满负荷工作,下图是开启全部四个核心:
Boush表示电脑卡的不行了,鼠标都动不了,费了好大的劲才截的图。。。。。。
老样子,附上代码!
package 编程之美;
public class CpuTest extends Thread {
public static void main(String[] args) {
CpuTest myThread1 = new CpuTest();
CpuTest myThread2 = new CpuTest();
CpuTest myThread3 = new CpuTest();
CpuTest myThread4 = new CpuTest();
myThread1.start();
myThread2.start();
myThread3.start();
myThread4.start();
}
public void run() {
int i = 0;
while(true){
i++;
}
}
}开两个进程就是50%!四个线程是100%。
相关文章推荐
- 我的服务器SQL2000的sqlserver占用了90%的cpu,怎么查是那个库?
- MySQL服务器进程CPU占用100%的解决方法
- 使用MySQL Slow Log来解决MySQL CPU占用高的问题
- 笔记本下什么是迅驰处理器(cpu)相关资料第1/2页
- doscan.exe进程占用了大量的CPU和内存的解决方法
- CPU也有远程攻击漏洞 英特尔匆匆修补
- w3wp.exe占用cpu过高的解决方法第1/2页
- win2003中的w3wp.exe进程大量占用cpu资源的各种问题解决方法
- 服务器上w3wp.exe占用cpu过多有时候超过50%的原因分析
- 一个用了统计CPU 内存 硬盘 使用率的shell脚本
- shell脚本监控系统负载、CPU和内存使用情况
- Firefox浏览器狂占CPU解决办法
- Windows服务器上lsass.exe进程CPU使用率异常问题排查方法
- Python获取单个程序CPU使用情况趋势图
- 千万级记录的Discuz论坛导致MySQL CPU 100%的优化笔记
- C语言计算代码执行所耗CPU时钟周期
- linux查看cpu是否支持64位的方法
- python统计cpu利用率的方法
- w3wp.exe占用CPU和内存问题过高的解决方法
- IIS6 w3wp.exe进程占用cpu和内存过多的解决方法