code: void tryToDrainBuffers() {
          if (evictionLock.tryLock()) {
              try {
                  drainStatus.set(PROCESSING);
                  drainBuffers();
              } finally {
                  drainStatus.compareAndSet(PROCESSING, IDLE);
                  evictionLock.unlock();
              }
          }
      }
docs: Attempts to acquire the eviction lock and apply the pending operations,
  up to the amortized threshold, to the page replacement policy.