java程序如何控制cpu

bagwg1127 2007-06-11 08:24:28
我写了下面一个简单的程序就使cpu100%了,有没有方法控制cpu,不要100%呀

我试过在线程中做下面一段程序,设置线程优先级Thread.MIN_PRIORITY也没用

int k = 0;
for(int i = 0; i< 100000; i++) {
for(int j = 0; j < 100000; j++) {
k *= 2;
}
}
...全文
548 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
vcshcn 2008-10-29
  • 打赏
  • 举报
回复
这是什么思路,那么多开源代码,没见过一个sleep控制的cpu
jhailong 2008-10-24
  • 打赏
  • 举报
回复
路过学习!
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
都是很好的建议! 值得学习
bagwg1127 2007-06-20
  • 打赏
  • 举报
回复
不过在复杂的程序流程里,这个处理起来就不知道怎样才能弄得比较漂亮了
Inhibitory 2007-06-20
  • 打赏
  • 举报
回复
这个东西,确定要用一下sleep(),我用C++运行了一下,一样占用CPU100%,看来跟Java没关系。
fool_leave 2007-06-19
  • 打赏
  • 举报
回复
int k = 0;
for(int i = 0; i< 100000; i++) {
for(int j = 0; j < 100000; j++) {
k *= 2;
}
sleep(0);
}

加个sleep(0),让cpu去考虑切换一下线程,至于这个sleep(0)放到什么地方,看你对计算效率的要求了

bagwg1127 2007-06-19
  • 打赏
  • 举报
回复
试了一下sleep(0),还是cpu 100%

不过如果改成sleep(1),cpu就一下子降到8%了

看来sleep()确实是个办法,谢谢各位啦
bagwg1127 2007-06-18
  • 打赏
  • 举报
回复
沉下去了......
lamb218 2007-06-14
  • 打赏
  • 举报
回复
如果不用sleep来控制,那就说明你的程序设计有问题
bagwg1127 2007-06-14
  • 打赏
  • 举报
回复
就是上面写的简单的循环,用sleep来控制?
realeasy 2007-06-12
  • 打赏
  • 举报
回复
执行一会sleep一下
bagwg1127 2007-06-12
  • 打赏
  • 举报
回复
这种需求并不过分呀,cpu100%着并不是好事呀,而且我也不追求程序运算的速度,只需要它70%地占着cpu就行了呀

就像查询数据库上千万条数据一样,在没有查出所有数据之前一直在运行查询,但人家cpu也没有100%地占着呀
zhaobo80968096 2007-06-12
  • 打赏
  • 举报
回复
java要是能控制cpu,还用等着cpu给线程分配时间片吗?
bagwg1127 2007-06-12
  • 打赏
  • 举报
回复
晕死,Oracle不可能也用sleep来实现这种效果的吧

259

社区成员

发帖
与我相关
我的任务
社区描述
其他产品/厂家
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧