[問題] 過長時間的thread sleep

看板java作者 (熊貓)時間14年前 (2011/09/09 22:07), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
我用了一個thread 每隔一段時間做特定的事 是一個無限迴圈 大概像這樣 public static void main(String[] args) { new Thread() { public void run() { try { while (true) { Thread.sleep(時間); 要做的事; } } catch (blahblah) {} } }.start(); 其他動作; } 先sleep一個時間後 然後再去做事 之前sleep的時間不長~但之後我開始增加時間 當時間太長之後 InterruptedException的問題就開始跑出來了 我覺得應該是sleep時間太長導致interrupted 但google很久之後 找不到有討論時間長短的文章 想請問前輩們如何解決這樣的問題呢~ 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.121.240

09/09 22:40, , 1F
sleep再長沒人中斷也不會出現InterruptedException
09/09 22:40, 1F

09/09 22:42, , 2F
把'要做的事'註解掉,改換成印目前時間,再試看看
09/09 22:42, 2F

09/09 22:44, , 3F
'其它的事'部分也比照處理. 逐步確認問題是出在哪一區.
09/09 22:44, 3F

09/10 00:16, , 4F
是樓上說的那兩個地方錯... 感謝樓上~~~
09/10 00:16, 4F

09/13 14:30, , 5F
你把exception 列印出來看就知道原因了~應該是發生錯誤
09/13 14:30, 5F
文章代碼(AID): #1EQXsggZ (java)