關於Thread中幾個方法的說明

2021-09-24 15:50:12 字數 830 閱讀 5635

執行緒中比較容易搞混淆的幾個方法:

isinterrupted:

public boolean isinterrupted()

interrupted:

public static boolean interrupted()

interrupt:

public void interrupt() ;

這三個方法都是關於執行緒狀態的方法,執行緒的初始狀態返回的應該是false;

interrupt方法使用於修改執行緒狀態,此時執行緒的狀態被修改為true

如果此時呼叫isinterrupted會返回true,呼叫靜態方法interrupted也會返回true,但是

interrupted是會重置執行緒狀態,貼**說明:

thread current = thread.currentthread();

current.interrupt();

system.out.println(thread.interrupted());

system.out.println(current.isinterrupted());

此時控制台輸出:true,false;

如果改變**順序:

thread current = thread.currentthread();

current.interrupt();

system.out.println(current.isinterrupted());

system.out.println(thread.interrupted());

此時返回的是:

true,true

Thread中的中斷方法interrupted

thread.interrupt 方法,給執行緒新增乙個中斷標誌,不是意味著這個執行緒馬上結束,而是對執行緒起到一種通知的作用。兩種判斷中斷標誌的方法,一種是靜態方法interrupted,它可以獲取標誌,並且把中斷標誌清除,也就是返回fasle。還有一種方法是isinterrupted,它也可以獲...

測試Thread中的常用方法

package com.day0205 2 測試thread中的常用方法 1.start 啟動當前執行緒 呼叫當前執行緒的run 2.run 通常需要重寫thread類的方法,將建立的執行緒要執行的操作宣告在此方法中 3.currentthread 靜態方法,返回當前 的執行緒 4.getname ...

Thread類中的常用方法

1.start 啟動當前執行緒 呼叫當前執行緒的run 2.run 通常需要重寫thread類中的此方法,將建立的執行緒要執行的操作宣告在此方法中 3.currentthread 靜態方法,返回執行當前 的執行緒 4.getname 獲取當前執行緒的名字 5.setname 設定當前執行緒的名字 6...