简单的把原子操作组合在一起, 并不能保证整体的操作是原子性的.
例如完全同步的HashMap并不完全的安全 . 例如通过Collections
工具类创建的同步的HashMapCollections.synchronizedMap(new HashMap())
并不能保证其安全性. 虽然此Map都加了synchronized同步, 但是如果有线程对map中的值取出来, 并且加上某个值, 再put回map中去, 那么此操作就不是原子性的.
简单的把原子操作组合在一起, 并不能保证整体的操作是原子性的.
例如完全同步的HashMap并不完全的安全 . 例如通过Collections
工具类创建的同步的HashMapCollections.synchronizedMap(new HashMap())
并不能保证其安全性. 虽然此Map都加了synchronized同步, 但是如果有线程对map中的值取出来, 并且加上某个值, 再put回map中去, 那么此操作就不是原子性的.
微信扫码登录