Класс X
имеет два способа: test
и test1
.java synchronized
Я создал два потока: t1
и t2
. Тема t1
обращается к test
методу и t2
обращается к test1
методу того же объекта. Когда t1
обращается к способу test
, который синхронизировал его, получает блокировку на объекте.
Будет ли t2
иметь доступ к test1
способ на одном объекте? Почему он может получить доступ к этому методу, если у t1
есть блокировка?
Если я, выполняя следующий код
X x = new X();
new MyThread(x).start(); // It execute test() method
new MyThread1(x).start();// It execute test1() method
class X
{
String a = "varsha";
public synchronized void test()
{
try
{
Thread.sleep (6000);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
public void test1()
{
synchronized (a)
{
}
}
}
Пожалуйста, отформатируйте свой код. Это ужасно !!! –