同じクラスに2つの同期されたメソッドがあり、それぞれが異なる変数にアクセスしている場合、2つのスレッドがそれらの2つのメソッドに同時にアクセスできますか?ロックはオブジェクトで発生しますか、それとも同期メソッド内の変数と同じくらい具体的になりますか?
例:
class X {
private int a;
private int b;
public synchronized void addA(){
a++;
}
public synchronized void addB(){
b++;
}
}
x.addA(
2つのスレッドが)を実行しているクラスXの同じインスタンスに同時にアクセスできますx.addB()
か?