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