Java多线程 原子操作加上原子操作不等于原子操作

简单的把原子操作组合在一起, 并不能保证整体的操作是原子性的.

例如完全同步的HashMap并不完全的安全 . 例如通过Collections工具类创建的同步的HashMapCollections.synchronizedMap(new HashMap<>()) 并不能保证其安全性. 虽然此Map都加了synchronized同步, 但是如果有线程对map中的值取出来, 并且加上某个值, 再put回map中去, 那么此操作就不是原子性的.

猜你喜欢

转载自blog.csdn.net/qq_33229669/article/details/108433721