本文介紹了如何在后臺線程中運行無限循環并重新啟動的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我要創建一個具有無限While循環的線程,在啟動該線程后,我的要求是重新啟動該線程。
我不知道該怎么做。
示例:
Thread th = new Thread(() -> {
while(true)
{
//some operation
}
});
th.start();
if(condition)
th.restart();
推薦答案
參見https://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html#start%28%29
啟動一個線程不止一次是不合法的。特別是,線程一旦完成執行就不能重新啟動。
我不知道您為什么要嘗試這樣做,但如果您想要解決辦法,只需中斷當前正在運行的線程并啟動新實例即可。
這篇關于如何在后臺線程中運行無限循環并重新啟動的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,