类文件如下:
public class ReadSysInfo extends Thread{ public void run(){
while(true){
Date newDate = new Date();
SimpleDateFormat mat = new SimpleDateFormat("HH:mm");
String time = mat.format(newDate); sleep(1000 * 600); // 休眠十分钟
if(time.equals("00:00")){
doA();
}
else{
doB();
}
}
}
} 需求是每天00:00分时执行doA()操作, 而其他时间每隔10分钟执行doB()操作.
我这样写会出现一个问题, 就是如果时间到00:00分而恰好线程处于sleep状态,那么就不会执行doA()了.
我现在该怎么写才能达到上面的需求? 我知道可以用timer来实现, 但我想问问有没有其他更简单的方法?
public class ReadSysInfo extends Thread{ public void run(){
while(true){
Date newDate = new Date();
SimpleDateFormat mat = new SimpleDateFormat("HH:mm");
String time = mat.format(newDate); sleep(1000 * 600); // 休眠十分钟
if(time.equals("00:00")){
doA();
}
else{
doB();
}
}
}
} 需求是每天00:00分时执行doA()操作, 而其他时间每隔10分钟执行doB()操作.
我这样写会出现一个问题, 就是如果时间到00:00分而恰好线程处于sleep状态,那么就不会执行doA()了.
我现在该怎么写才能达到上面的需求? 我知道可以用timer来实现, 但我想问问有没有其他更简单的方法?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货