[toc]
Concurrent包提供了AtomicIntegerArray、AtomicLongArray、AtomicReferenceArray三个数组元素的原子操作。注意,这里并不是说对整个数组的操作是原子的,而是针对数组中一个元素的原子操作而言。
AtomicIntegerArray的大多数操作与AtomicInteger相同,不同之处在于AutomicIntegerArray中需要通过index计算要修改或者查询元素的内存偏移量,此外还需要计算这个内存偏移量.
内存偏移量的计算方法
base表示数组的首地址的位置,scale表示一个数组元素的大小,
i的偏移量则等于:i*scale+base。
1 | package java.util.concurrent.atomic; |