一、Java線程的幾種狀態:NEW/RUNNABLE/RUNING/BLOCKED/TEMINATEDjava
二、java線程是一個典型的模板設計模式編程
三、建立線程的兩種方式:設計模式
1)thread類多線程
2)實現RUNANBLE接口異步
thread和runnable的區別:thread負責線程自己相關的職責和管理(好比編號、優先級等)、而runnable則負責邏輯執行單元的部分!分佈式
四、sleep不會放棄monitor鎖的全部權!線程
五、yield把running切換到runnable。主動放棄CPU資源設計
六、interrupt會讓線程進入blocked狀態中間件
七、join方法收集全部分佈式線程的結果到一塊兒!接口
八、關注如何優雅的關閉一個線程!使用鎖??
九、wait/notify用於一對一線程單線程之間的通訊,wait/notisfyall用於多對多多線程之間的通訊。其中notisfy能同時喚起全部的阻塞阻塞去爭取鎖!
十、線程之間的通訊使用隊列的wait、notify、notifyall來控制
十一、進程之間的異步通訊使用MQ消息隊列中間件來控制!
十二、synchronized鎖關鍵字!爭取monitor鎖!
1三、使用Java JDK提供的current包來進行多線程編程!注意線程池各類使用,另外也要注意funtur模式,如何把全部多線程的數據組合起來!!