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