private void AbortPageFault(Exception throwable, int[] chunk, long chunkOffset, LatchMap.Latch latch, PageFaultEvent faultEvent) { UnsafeUtil.putIntVolatile(chunk, chunkOffset, UNMAPPED_TTE); latch.Release(); faultEvent.Done(throwable); PinEvent.done(); }
protected internal override void UnpinCurrentPage() { if (PinnedPageRef != 0) { PinEvent.done(); // Mark the page as dirty *after* our write access, to make sure it's dirty even if it was concurrently // flushed. Unlocking the write-locked page will mark it as dirty for us. if (EagerFlush) { EagerlyFlushAndUnlockPage(); } else { PagedFile.unlockWrite(PinnedPageRef); } } ClearPageCursorState(); }