執行緒中比較容易搞混淆的幾個方法:
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...