共計 1087 個字符,預(yù)計需要花費 3 分鐘才能閱讀完成。
在 Java 中,可以使用 Thread 類的 getState() 方法來獲取線程的狀態(tài)。getState() 方法返回一個 Thread.State 枚舉值,表示線程的狀態(tài)。
下面是一個示例代碼,演示了如何獲取線程的狀態(tài):
public class Main {????public?static?void?main(String[]?args)?{
????????Thread?thread?=?new?Thread(()?->?{
????????????try?{
????????????????Thread.sleep(2000);
????????????}?catch?(InterruptedException?e)?{
????????????????e.printStackTrace();
????????????}
????????});
????????thread.start();
????????//?獲取線程的狀態(tài)
????????Thread.State?state?=?thread.getState();
????????System.out.println(“線程狀態(tài):”+?state);
????????try?{
????????????//?等待線程執(zhí)行完畢
????????????thread.join();
????????}?catch?(InterruptedException?e)?{
????????????e.printStackTrace();
????????}
????????//?再次獲取線程的狀態(tài)
????????state?=?thread.getState();
????????System.out.println(“線程狀態(tài):”+?state);
????}
}
上述代碼創(chuàng)建了一個新的線程,并啟動它。然后,通過調(diào)用 getState() 方法獲取線程的狀態(tài),并將其打印輸出。接著,使用 join() 方法等待線程執(zhí)行完畢,再次調(diào)用 getState() 方法獲取線程的狀態(tài),并將其打印輸出。
運行上述代碼,可以看到輸出結(jié)果如下:
線程狀態(tài):RUNNABLE
線程狀態(tài):TERMINATED
可以看到,線程的初始狀態(tài)是 RUNNABLE,表示線程正在運行。當(dāng)線程執(zhí)行完畢后,狀態(tài)變?yōu)?TERMINATED,表示線程已經(jīng)終止。
除了上述兩個狀態(tài),Thread.State 枚舉還包括其他狀態(tài),如 NEW(新建狀態(tài))、BLOCKED(阻塞狀態(tài))、WAITING(等待狀態(tài))等。通過 getState() 方法可以獲取線程的當(dāng)前狀態(tài)并進(jìn)行相應(yīng)的處理。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!