java Thread.sleep()实现定时任务
实现代码很简单,在Thread内不断循环执行任务,通过Thread.sleep()控制时间间隔
另外用一个boolean变量来控制定时任务的开始和停止。
private boolean run;
// 开启定时器
private void startTask() {
// 任务执行中,直接返回
if (run) {
return;
}
run = true;
new Thread(new Runnable() {
@Override
public void run() {
while (run) {
Log.d("Timer", "do something...");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
}
// 停止定时器
private void stopTask() {
run = false;
}