您还可以使用ScheduledExecutorService
使用一个ExecutorService,您可以安排指令给定延迟后运行命令,或者定期地执行。下面的示例示出了一类具有,设置了一个ScheduledExecutorService的以每十秒钟发出蜂鸣声一小时的方法:
import static java.util.concurrent.TimeUnit.*;
class BeeperControl {
private final ScheduledExecutorService scheduler =
Executors.newScheduledThreadPool(1);
public void beepForAnHour() {
final Runnable beeper = new Runnable() {
public void run() { System.out.println("beep"); }
};
final ScheduledFuture<?> beeperHandle =
scheduler.scheduleAtFixedRate(beeper, 10, 10, SECONDS);
scheduler.schedule(new Runnable() {
public void run() { beeperHandle.cancel(true); }
}, 60 * 60, SECONDS);
}
}
会'的Thread.sleep(5);'解决这个问题? – ppeterka 2013-03-20 11:02:38
你需要使用这个计时器的时间表.- http://developer.android.com/reference/java/util/Timer.html – 2013-03-20 11:03:38
你可以在这里看到http://stackoverflow.com/questions/3072173/how-to -all-a-method-after-a-delay?rq = 1 – 2013-03-20 11:03:52