线程安全
線程安全的三種:
1. 不在線程之間共享可變的狀態變量。
2. 將共享可變的狀態變量修改為不可變的變量。
3. 在訪問狀態變量時使用同步。
線程安全實現方式:
1. 無狀態對象一定是線程安全。如servlet不使用任何全局變量。
2. 原子性,導致原子性的場景:競態條件如計數器,延遲初始化;應用原子性的場景是少量原子變量且不相關。
3.加鎖機制,當在不變性條件中涉及到多個變量時,各個變量之間并不是彼此獨立的,而是某個變量的值會對其它變量的值產生約束。
?? 內置鎖synchonized block來支持原子性,線程重入。
轉載于:https://www.cnblogs.com/davidwang456/p/3439835.html
總結
- 上一篇: 最好的编程名言,大家一起来共勉----转
- 下一篇: kill -3 获取threaddump