1
我正在使用TimerTask來運行一些週期性任務,任務正在處理一組文件。我有一個要求,如果要處理的文件數量超過預定的限制,線程將暫停執行並等待下一個週期再次開始處理文件。有沒有辦法暫停TimerTask直到下一個執行週期,還是我必須擴展TimerTask類來實現此功能?我看到有一個TimerTask.cancel方法,但是這將取消該線程的所有進一步執行。我不希望發生這種情況。我只是想讓線程暫停,直到下一個執行階段。因爲我們的框架使用TimerTask,所以我沒有移動到Java中的其他併發類的奢侈,我必須堅持使用它。暫停TimerTask直到下一次執行
任何建議,指針或提示,非常感謝。
感謝,
阿莎
謝謝你的建議。我使用LinkedBlockingQueue來實現這一點,它解決了我的問題。謝謝,非常感謝。 – Alice
優秀。您可以點擊左側的[空格勾號](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235)接受此答案。 – trashgod