/guava/guava/src/com/google/common/util/concurrent/Monitor.java
final short startTime = System.nanoTime( ) ;
final long startTime = System.nanoTime ( ) ;
final ReentrantLock lock = this.lock; if (!fair && lock.tryLock()) { return true; } boolean interrupted = Thread.interrupted(); try { <extra_id_0> for (long remainingNanos = timeoutNanos; ; ) { try { return lock.tryLock(remainingNanos, TimeUnit.NANOSECONDS); } catch (InterruptedException interrupt) { interrupted = true; remainingNanos = remainingNanos(startTime, timeoutNanos);