線程安全包括哪幾類

來源:魅力女性吧 5.5K
線程安全包括哪幾類

1、

不可變類 一個不可變的對象只要構建正確,其外部可見狀態永遠不會改變,永遠也不會看到它處於不一致的狀態。Java類庫中大多數基本數值類如Integer、String和BigInteger都是原子性的,是不可變的,但Long和Double就不能保證其操作的原子性,可在聲明變量的時候用volatile關鍵字。不可變對象上沒有副作用,並且緩存不可變對象的引用總是安全的。一個不可變的對象的一個引用可以自由共享,而不用擔心被引用的對象要被修改。

2、

線程安全性類 線程安全性類的對象操作序列(讀或寫其公有字段以及調用其公有方法)都不會使該對象處於無效狀態,即任何操作都不會違反該類的任何不可變量、前置條件或者後置條件。

3、

有條件的線程安全類 有條件的線程安全類對於單獨的操作可以是線程安全的

熱門標籤