我有一个简单的Clock类,它启动了一个后台线程,该线程每秒休眠一次并增加时间:

@Override
public void run() {
    while (isClockStarted) {
        try {
            TimeUnit.SECONDS.sleep(1);
            setTime(time + 1);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}


On Clock对象创建时间实例变量,以Calendar.getInstance().getTimeInMillis() / 1000;初始化
因为我需要一个unix时间戳。

我想这个时钟线程将一直运行。 Android OS在任何情况下都可以阻止该线程吗?假设该进程是不朽的,然后重新启动系统杀死的每个进程。

最佳答案

您是否看过Android CountDownTimer? https://developer.android.com/reference/android/os/CountDownTimer.html
您可以告诉线程何时停止使用Millis Future。希望对您有帮助。

07-28 01:52
查看更多