2 回答

TA貢獻1943條經(jīng)驗 獲得超7個贊
不,線程將根據(jù)其run()方法實現(xiàn)內(nèi)部發(fā)生的情況終止。如果您只是獲得一個當(dāng)前正在運行的線程而無法訪問它正在執(zhí)行的代碼,則無法強制它終止(除了調(diào)用stop()or destroy(),這兩個都已棄用且不應(yīng)使用)。
但是,如果您可以編寫這些線程正在運行的代碼,那就真的很簡單了:
Thread t3 = new Thread(() -> {
System.out.println("Thread 3 terminating...");
});
Thread t2 = new Thread(() -> {
try { t3.join(); } catch(InterruptedException e) {};
System.out.println("Thread 2 terminating...");
});
Thread t1 = new Thread(() -> {
try { t2.join(); } catch(InterruptedException e) {};
System.out.println("Thread 1 terminating...");
});
t1.start();
t2.start();
t3.start();
添加回答
舉報