java併發程式設計實戰-第二章
阿新 • • 發佈:2018-12-16
執行緒安全性的定義: 最核心概念:準確性,當多個執行緒訪問某個類的時,這個類始終都能biao表現出正確的行為,那麼就稱這個類是執行緒安全的。
原子性:線上程安全中,要保證操作是原子性的,也就是能夠作為不可分割的操作來實現的。可以通過加鎖把複合的操作原子化處理。
加鎖機制 : 1.通過內建的鎖機制:同步程式碼塊:synchronized 分為兩個部分: 鎖的'物件引用:方法呼叫的物件 鎖保護的程式碼塊:synchronized關鍵字修飾的方法 2. 內建鎖是可以重入的。
用鎖來保護狀態:常見加鎖約定:將所有的的可變狀態都封裝在物件內部,並通過物件的內建鎖對所有訪問可變狀態的程式碼路徑進行同步,使得在該物件上不會發生併發訪問。、
活躍性與效能:儘量將不影響共享狀態且執行實踐較長的操作從同步程式碼塊中分離出去。
2018-10-17 22:55分留