public void await ( K k , long timeout , TimeUnit unit ) throws InterruptedException , TimeoutException { if ( ! acquireLock ( k ) . await ( timeout , unit ) ) { throw new TimeoutException ( "Wait time for retrieving value for key " + k + " exceeded " + timeout + " " + unit ) ; } }
Waits until the key has been assigned a value up to the specified maximum .