1、執行緒是乙個程式內部不同的執行路徑
2、生成執行緒只要能使用介面就不要繼承,繼承後就不能繼承其他的類,比較死。而且繼承的run方法不能丟擲與父類不同的異常。比如sleep的intterruptedexception
3、start方法只是說我準備好了,進入就緒狀態了,等待排程後才進入執行狀態
4、執行緒控制基本方法
5、執行緒關閉
1)thread.interrupt 讓執行緒中斷,還可以在interruptexception裡做其他處理
2)stop已經廢棄了,比interrupt還粗暴
3)通過標誌flag不滿足條件關閉run方法,run方法結束,執行緒結束
6、執行緒同步
public class t implements runnable結果public synchronized void
m2() throws interruptedexception
public void
run()catch (exception e)
}public static void
main(string args) throws exception
}
b = 1000
如果m2方法去掉synchronized 則輸出b=2000,原因是如果加了synchronized 則表示需要等鎖,但是如果沒有加鎖的方法是可以直接訪問的。
7、生產者消費者
public class producerconsumer}class wotou
public string tostring()
}class syncstack catch (interruptedexception e)
}this.notify();
arrwt[index] = wt;
index++;
} public synchronized wotou pop() catch (interruptedexception e)
}this.notify();
index--;
return
arrwt[index];}}
class producer implements runnable
public void
run() catch (interruptedexception e) }}
}class consumer implements runnable
public void
run() catch (interruptedexception e)
system.out
.println(wt);
} }
}
Java多執行緒學習筆記
程序與執行緒 1.程序 執行中的程式 乙個程序至少包含乙個執行緒 2.執行緒 程序中負責程式執行的執行單元 執行緒本身依靠程式進行執行 執行緒是程式中的順序控制流,只能使用分配給程式的資源和環境 3.單執行緒 程式中只存在乙個執行緒,實際上主方法就是乙個主線程 4.多執行緒 在乙個程式中執行多個任務...
java多執行緒學習筆記(二)
8 執行緒的狀態 初始狀態 使用new關鍵字建立乙個執行緒,則執行緒就處理初始狀態。就緒狀態 建立執行緒後,需要我們手動呼叫start方法,來開啟執行緒,start方法會新建乙個執行緒並讓這個執行緒執行run方法。有的同學可能不理解,為什麼不直接呼叫run方法,請記住呼叫run來開啟新執行緒,它只會...
JAVA 多執行緒學習筆記(一)
程序 當你點開乙個qq.exe的時候是乙個程序,點開wechat.exe的時候又是另外的乙個程序。執行緒 當你點開qq.exe的時候,qq這個程式裡面又有許多同時在執行的執行緒。建立多執行緒有3種方式,分別是繼承執行緒類,實現runnable介面,匿名類 第一種實現runnable介面 重寫run方...