public void lockInterruptibly() throws InterruptedException {
      for (;;) {
        stopper.checkCancelInProgress(null);
        if (lock.tryLock(RETRY_TIME, TimeUnit.MILLISECONDS)) {
          break;
        }
      }
    }
Create a new read lock from the given lock

@param lock the lock to be used
@param stopper the cancellation criterion
geode-core/src/main/java/org/apache/geode/internal/util/concurrent/StoppableReentrantReadWriteLock.java