question: void postRemoteReleaseLock ( Object objectName ) throws InterruptedException { if ( ! acquireDestroyReadLock ( 0 ) ) { return ; } try { checkDestroyed ( ) ; drainPermittedRequests ( ) ; grantLock ( objectName ) ; } catch ( LockServiceDestroyedException e ) { } catch ( LockGrantorDestroyedException e ) { } finally { releaseDestroyReadLock ( ) ; } }
target:  Drain currently permitted requests and grant lock to next requestor. <p> Acquires destroyReadLock. Synchronizes on suspendLock, grantTokens, and the grant token.