1.背景介紹
多線程Thread
是多線程的一種實現(xiàn)方式瘸洛,是Runnable一種實現(xiàn)
2.知識剖析
多線程Thread的初始化
線程的啟動
start()方法的調(diào)用
檢查線程是否初始化;
通知group次和,線程啟動反肋;
調(diào)用native方法start0()啟動線程,啟動后執(zhí)行run()方法踏施;石蔗;
啟動失敗容錯處理。畅形;
3.常見問題
start()如何調(diào)用的run()
start0();
private native void start0();
由這個來吊起本地方法养距,通過本地方法運行run方法
4.配置展示
源碼
5.擴(kuò)展思考
為什么start()不能重復(fù)調(diào)用
當(dāng)調(diào)用start()時會調(diào)用線程的add()方法,有以下代碼
synchronized (this) {
if (destroyed) {
throw new IllegalThreadStateException();
? ? }
synchronized 關(guān)鍵字 不能有兩個線程同時啟動
6.參考文獻(xiàn)
https://wangchangchung.github.io/2016/12/05/Java%E5%B8%B8%E7%94%A8%E7%B1%BB%E6%BA%90%E7%A0%81%E2%80%94%E2%80%94Thread%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/
http://blog.csdn.net/u010185262/article/details/53509685
http://blog.csdn.net/u010412719/article/details/51020128
https://www.cnblogs.com/b3051/p/7484501.html
7.更多討論
分享到此結(jié)束
歡迎大家討論
PPT:PPT
技能樹.IT修真院
“我們相信人人都可以成為一個工程師日熬,現(xiàn)在開始棍厌,找個師兄,帶你入門竖席,掌控自己學(xué)習(xí)的節(jié)奏耘纱,學(xué)習(xí)的路上不再迷茫”怕敬。
這里是技能樹.IT修真院揣炕,成千上萬的師兄在這里找到了自己的學(xué)習(xí)路線,學(xué)習(xí)透明化东跪,成長可見化畸陡,師兄1對1免費指導(dǎo)∷涮睿快來與我一起學(xué)習(xí)吧~