我有一個程序來讀取一些RSS提要,解析它們,並將鏈接複製到其他地方。好!我想每隔10分鐘檢查一次RSS源以獲取可能的更新。我寫了這段代碼:Thread.sleep()不能連續工作
@Override
public void run() {
while (true) {
// check feeds here
try {
Thread.sleep(600000);
} catch (InterruptedException ex) {
// exception handing
}
}
}
當我運行它,一兩天,它是好的,並運行。但通常在3或4天后,它會進入睡眠狀態,永不再醒來!所以它不會更新RSS提要。
我該如何解決這個問題!?
如果線程卡在Thread.sleep中,您可以使用JCONSOLE進行檢查。 – 2012-08-13 08:02:35
請考慮使用其中一個[scheduler API](http://docs.oracle.com/javase/tutorial/essential/concurrency/exinter.html)。 – McDowell 2012-08-13 08:07:17