如何同步整数数组的单个元素?

koo*_*hka 3 java arrays synchronized

如果我想锁定整个数组,我可以使用这样的synchronized关键字:

int arr[];

synchronized void inc(int a, int b){
    arr[a]=arr[a]+b;
}
Run Code Online (Sandbox Code Playgroud)

但是我可以只锁定项目,arr[a]以便其他线程仍然可以同时读取/写入数组的其他项目吗?

kan*_*kan 6

也许你的结构更合适 AtomicIntegerArray