code: public boolean acquireAccess(long sessionId, long blockId, Protocol.OpenUfsBlockOptions options)
        throws BlockAlreadyExistsException {
      UnderFileSystemBlockMeta blockMeta = new UnderFileSystemBlockMeta(sessionId, blockId, options);
      try (LockResource lr = new LockResource(mLock)) {
        Key key = new Key(sessionId, blockId);
        if (mBlocks.containsKey(key)) {
          throw new BlockAlreadyExistsException(ExceptionMessage.UFS_BLOCK_ALREADY_EXISTS_FOR_SESSION,
              blockId, blockMeta.getUnderFileSystemPath(), sessionId);
        }
        Set<Long> sessionIds = mBlockIdToSessionIds.get(blockId);
        if (sessionIds != null && sessionIds.size() >= options.getMaxUfsReadConcurrency()) {
          return false;
        }
        if (sessionIds == null) {
          sessionIds = new HashSet<>();
          mBlockIdToSessionIds.put(blockId, sessionIds);
        }
        sessionIds.add(sessionId);
  
        mBlocks.put(key, new BlockInfo(blockMeta));
  
        Set<Long> blockIds = mSessionIdToBlockIds.get(sessionId);
        if (blockIds == null) {
          blockIds = new HashSet<>();
          mSessionIdToBlockIds.put(sessionId, blockIds);
        }
        blockIds.add(blockId);
      }
      return true;
    }
docs: Acquires access for a UFS block given a {@link UnderFileSystemBlockMeta} and the limit on
  the maximum concurrency on the block. If the number of concurrent readers on this UFS block
  exceeds a threshold, the token is not granted and this method returns false.
  
  @param sessionId the session ID
  @param blockId maximum concurrency
  @param options the options
  @return whether an access token is acquired
  @throws BlockAlreadyExistsException if the block already exists for a session ID