1. 程式人生 > >Java執行緒安全類

Java執行緒安全類

執行緒不安全的類:
HashMap
LinkedHashMap
TreeMap
ArrayList
LinkedList
HashSet
TreeSet
LinkedHashSet
StringBuilder

執行緒安全的類:
ConcurrentHashMap
Hashtable
Vector
CopyOnWriteArrayList
CopyOnWriteArraySet
StringBuffer

需要注意的是,在使用支援執行緒安全的類時,要注意效能問題,比如Hashtable的效能要比ConcurrentHashMap差,還有些類有特殊的使用場景,比如CopyOnWriteArrayList和CopyOnWriteArraySet是使用在讀操作遠遠多於

寫操作的場景下,用在其他場景時效能會下降很多。

JDK原始碼concurrent目錄中是一些支援併發訪問的類。除此之外,Java還提供了多種執行緒安全的方式,比如synchronized,ReentrantLock,同步包裝器(Collections.synchronizedXXX)等,根據具體情況由開發設計人員選擇適合的執行緒安全方式。