У меня есть два потока Thread1
и Thread2
//Within Thread1
synchronized(obj1)
{
obj1 = null;
}
//Within Thread2
synchronized(obj1)
{
do something
}
Если jvm сначала выполняет thread1 и устанавливает obj1 в null, то thread2 увидит это изменение немедленно или потребуется время, и jvm все еще может запустить синхронизированный блок thread2, поскольку obj1 еще не равен нулю?