org.terracotta.offheapstore.paging
Interface PageSource

All Known Implementing Classes:
MappedPageSource, PhantomReferenceLimitedPageSource, UnlimitedPageSource, UpfrontAllocatingPageSource

public interface PageSource

Author:
cdennis

Method Summary
 Page allocate(int size, boolean thief, boolean victim, OffHeapStorageArea owner)
          Attempt to allocate a page of the given size.
 void free(Page page)
           
 

Method Detail

allocate

Page allocate(int size,
              boolean thief,
              boolean victim,
              OffHeapStorageArea owner)
Attempt to allocate a page of the given size.

Allocations identified as thieves will if necessary 'steal' space from previous allocations identified as 'victims' in order to fulfill the allocation request. owner is the area from which the returned page can subsequently be stolen or recovered. This is most likely to be the calling instance.

Parameters:
size - size of page to allocate
thief - true if the allocation can steal space from victims
victim - true if the allocated page should be eligible for stealing
owner - owner from which subsequent steal should occur
Returns:
an allocated page, or null in the case of failure

free

void free(Page page)


Copyright © 2016. All Rights Reserved.