小弟有个关于多CPU下跑多线程的问题:
现在应用场景是这样的,一个B/S系统,用户提交请求到服务器端之后,服务器开始计算,计算过程使用多线程实现。服务器使用的是多CPU(4个哦CPU)的服务器,但是测试中发现尽管线程数已经调到很高(>40个线程),但是仅仅是1个CPU被使用,使用率仅为60%,其它CPU的使用率都为0%。
请问如果要将4个CPU都利用上该如何实现?是需要配置服务器吗?还是可以通过程序进行控制?
(应用中使用websphere,jdk1.4)
现在应用场景是这样的,一个B/S系统,用户提交请求到服务器端之后,服务器开始计算,计算过程使用多线程实现。服务器使用的是多CPU(4个哦CPU)的服务器,但是测试中发现尽管线程数已经调到很高(>40个线程),但是仅仅是1个CPU被使用,使用率仅为60%,其它CPU的使用率都为0%。
请问如果要将4个CPU都利用上该如何实现?是需要配置服务器吗?还是可以通过程序进行控制?
(应用中使用websphere,jdk1.4)
解决方案 »
- 弱问 一个 td 换行的问题
- struts2表单提交时报错,希望牛人帮解决!
- java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable
- iis+tomca结合后,tomcat可以支持asp吗?
- javascript在客户端生成txt文件的问题
- 使用smartupload上传图片的一个问题
- java.io.File如何释放对文件的引用?
- onClick="javascript:document.all.a.submit();"是什么意思?如果在页面把表格的内容生成一个execl,该怎么做?
- 非常郁闷的问题!大家看看!
- executeQuery(sql),后怎么没有转到自己定义的err.html???
- 循环异步请求,快慢问题
- jsp页面转换报错
在程序中并没有使用Java已有的容器。而是自己写了一个管理线程的调度类(也是一个线程),来负责线程通信和线程调度。由于设计的调度线程也是一个thread对象,而且并不与并发的其它线程有所属关系,和你说的线程池容器应该只是部分功能相同,当并不是。(不知道你说的线程池是否是concurrent下的东东)
4个cpu是平均使用的。