I have this class:
public class MyClass {
public MyClass(){}
public void actionA(){
synchronized(MyClass.class){
System.out.print("A");
}
}
public void actionB(){
synchronized(MyClass.class){
actionA();
}
}
}
Which one (if any) is true?
- Calling actionB() will lead to a deadlock, since actionA() can never aquire the lock associated with MyClass.class
- Calling actionB() will not lead to a deadlock, since it already has aquired the lock associated with MyClass.class