xindongyinfu 2011-07-11 10:48
浏览 300
已采纳

由于我要不停的判断当前时间,写了死循环造成CPU100%怎么办

[code="java"]
public class Thread1 implements Runnable {
public void run() {
while (true) {//死循环,当时间到达我指定的时间才跳出来。
if (isExceTime()) {//不停的判断当前时间是否到指定时间
Timer timer = new Timer();
timer.schedule(new FixedTime1(), 0,360000);
break;
}
}
}

private boolean isExceTime() {
//取出当前时间判断是否到我指定的时间
}
}[/code]

我将上面的应用部署到tomcat里在应用启动的时候同时运行。进入死循环 等待时间到达。不知道这样写会不会把应用搞死。
比如我现在是早上8点钟把应用起来,我期望定时作业到夜里12点才开始运行,这样的话我今天一天应用都有一个线程再那死循环。会不会有问题.
死循环造成CUP占有率100%,咋办

  • 写回答

1条回答 默认 最新

  • crane_may 2011-07-11 17:22
    关注

    while里面 sleep 100毫秒之类的

    而且你的时间精度不高,可以sleep长一点,5分钟?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序
  • ¥50 html2canvas超出滚动条不显示
  • ¥15 java业务性能问题求解(sql,业务设计相关)
  • ¥15 52810 尾椎c三个a 写蓝牙地址