public void ConfigurePagePool(PagePool pagePool) { if (pagePool == null) { throw new ArgumentNullException(nameof(pagePool)); } _GlobalPagePool = pagePool; }
internal CacheStorage(IStorage inner, bool ownInner, PagePool pagePool, bool autoCommitEvictedPages) { if (pagePool == null) { throw new ArgumentNullException(nameof(pagePool)); } InnerStorage = inner; own = ownInner; this.canCommitAutomatically = autoCommitEvictedPages; _PagePool = pagePool; _EvictedCallback = new Func <Page, ValueTask>(EvictPage); Length = inner.Length; _LengthChanged = false; }
void Awake() { max = 0; min = 0; _pageBuffer1 = new List <PageData>(); PageDataBuffer1 = new Dictionary <int, PageData>(); Instance = this; UploadImgCor = null; UploadAudioCor = null; isLoadingPicture = false; isLoadingClip = false; }
public static Page PopToPool(string name, PagePool pagePool) { while (stack.Count > 0 && !stack.Peek().name.Equals(name)) { var page = stack.Pop(); page.Active = false; page.OnNavigatedFrom(); page.OnPop(); pagePool.Put(page.name, page); } if (stack.Count > 0) { RecaculateActive(); var tarPage = stack.Peek(); tarPage.OnNavigatedTo(); return(tarPage); } return(null); }