/** * Resumes all the locks that were suspended while this thread was waiting to acquire another lock. */ void resumeSuspendedLocks(Thread owner) { LockState[] toResume; synchronized (suspendedLocks) { Stack prevLocks = suspendedLocks.get(owner); if (prevLocks == null) return; toResume = (LockState[]) prevLocks.pop(); if (prevLocks.empty()) suspendedLocks.remove(owner); } for (int i = 0; i < toResume.length; i++) toResume[i].resume(); }
/** * Resumes all the locks that were suspended while this thread was waiting to acquire another lock. */ void resumeSuspendedLocks(Thread owner) { LockState[] toResume; synchronized (suspendedLocks) { Stack prevLocks = (Stack) suspendedLocks.get(owner); if (prevLocks == null) return; toResume = (LockState[]) prevLocks.pop(); if (prevLocks.empty()) suspendedLocks.remove(owner); } for (int i = 0; i < toResume.length; i++) toResume[i].resume(); }
/** * Resumes all the locks that were suspended while this thread was waiting to acquire another lock. */ void resumeSuspendedLocks(Thread owner) { LockState[] toResume; synchronized (suspendedLocks) { Stack prevLocks = suspendedLocks.get(owner); if (prevLocks == null) return; toResume = (LockState[]) prevLocks.pop(); if (prevLocks.empty()) suspendedLocks.remove(owner); } for (int i = 0; i < toResume.length; i++) toResume[i].resume(); }
/** * Resumes all the locks that were suspended while this thread was waiting to acquire another lock. */ void resumeSuspendedLocks(Thread owner) { LockState[] toResume; synchronized (suspendedLocks) { Stack prevLocks = (Stack) suspendedLocks.get(owner); if (prevLocks == null) return; toResume = (LockState[]) prevLocks.pop(); if (prevLocks.empty()) suspendedLocks.remove(owner); } for (int i = 0; i < toResume.length; i++) toResume[i].resume(); }