Может ли блокировка (java.util.concurrent.locks.Lock) собирать мусор во время блокировки? Предположим чисто теоретический пример:
WeakReference r;
public void foo(){
Lock lock = new ReentrantLock();
r = new WeakReference(lock);
lock.lock();
}
Может ли lock
быть собранным мусором после выполнения foo()
? Другими словами, lock.lock()
создает любые сильные ссылки обратно на блокировку?
Откуда вы знаете?