我写了一个小程序,不断打开一个带定时器的网站
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
myview.loadUrl(readFromFile());
}
}, 10000, 180000);
但问题是它在一定时间后(例如1或2周)停止运行。我想到某种类型的缓存溢出,数字太高。 我可以更改此代码,以便我的计时器运行一致而不会在一段时间后停止吗? 我非常感谢你的帮助。
答案 0 :(得分:0)
定时器在与主UI线程分开的线程中运行,因此任何异常都只会导致线程停止。问题可能是由于线程遇到异常。
为了调试此问题,我建议您尝试捕获并记录此异常。您可以通过为应用程序注册默认异常处理程序来完成此操作。 This article对如何执行此操作提供了很好的解释。
让我知道调试是如何进行的,祝你好运!