Допустим, у нас есть два класса A, B и синхронизированные методы methodA, methodB соответствующих классов. Если мы вызываем синхронизированный метод B из синхронизированного метода A, удерживает ли поток блокировку объекта ObjectA, пока метод B все еще выполняется?
Class A
{
public synchronized void methodA()
{
//do something;
synchronized(ObjectB)
{
ObjectB.methodB();
}
}
}
Class B
{
public synchronized void methodB()
{
//do something
}
}