在Java中,可以使用Thread類的方法來創建和管理線程。以下是一些常用的Thread方法:
start()方法:啟動線程,并且調用線程的run()方法。每個線程只能調用一次start()方法。
run()方法:定義線程的具體執行邏輯。需要在自定義的線程類中重寫此方法。
sleep()方法:讓當前線程休眠一段時間。可以通過傳遞一個時間參數來指定休眠的時長,單位是毫秒。
join()方法:等待指定的線程終止。當一個線程調用另一個線程的join()方法時,該線程將被阻塞,直到被調用的線程執行完畢。
interrupt()方法:中斷線程。調用該方法會設置線程的中斷狀態為true,但并不會立即停止線程的執行。需要在線程的run()方法中通過判斷中斷狀態來決定是否終止線程的執行。
isAlive()方法:判斷線程是否在活動狀態。如果線程已經啟動且尚未終止,則返回true,否則返回false。
yield()方法:暫停當前正在執行的線程,使其他線程有機會執行。調用yield()方法會讓出當前線程的執行權限,但仍然處于可運行狀態,可能會立即再次執行。
setPriority()方法:設置線程的優先級。線程的優先級范圍是1~10,默認為5。較高優先級的線程在競爭CPU資源時擁有更高的執行機會。
getName()和setName()方法:獲取和設置線程的名稱。
currentThread()方法:獲取當前正在執行的線程對象。
這些方法可以通過Thread類的對象來調用,如:
Thread t1 = new Thread();
t1.start();
Thread.sleep(1000);
Thread t2 = new Thread();
t2.join();
if (Thread.currentThread().isInterrupted()) {
// 處理中斷邏輯
}