多執行緒筆記一
多執行緒筆記二
多執行緒筆記三
多執行緒相關問題
一.多執行緒相關問題
1. Thread 與runnable區別
- 共同點
- 區別:runnable 可以在多個執行緒中共享達到共享資源的優勢,而且比較容易控制
二 執行緒間通訊
1. Synchronized 關鍵字
- Synchronized 物件鎖
- Synchronized 實現執行緒間的通訊
- Synchronized/volatile
volatile 不允許講主記憶體的變數拷貝到執行緒的記憶體空間
volatile只能線上程和主記憶體直接同步一個變數值,Synchronized 可以同步執行緒和主記憶體直接所有的值。
- Synchronized/lock
lock 方法需要制定起始與終點位置 Synchronized效能較差
Synchronized是悲觀鎖,lock 是樂觀鎖。
2. sleep/wait
wait 是object的方法 sleep 是執行緒的方法
3. wait/notify
wait notify 是object的方法,需要其他執行緒呼叫notify 才能釋放鎖。
執行緒池
- 優點
- 降低資源消耗
- 提高響應速度
- 提高執行緒管理
- ThreadPoolExcutor
- 構造引數介紹
- 執行緒池的工作流程
- 判斷基本執行緒是否已經滿了
- 判斷工作佇列是否已滿
- 判斷整個執行緒是否滿了