THotPDF.PrefetchLoadedPages Method
디스플레이 리스트 컴파일이나 재생 중 render cache 잠금을 잡고 있지 않으면서, 로드 페이지 래스터 캐시를 비동기로 데웁니다
선언
procedure PrefetchLoadedPages(const PageRange: string= ''; DPI: Integer= 150);
유닛
HPDFDoc
매개변수
| 이름 | 목적 |
|---|---|
PageRange | 표준 페이지 범위 파서가 받는 1 기반 페이지 범위이며, 비워 두면 로드된 모든 페이지가 대상입니다 |
DPI | 예약된 모든 캐시 엔트리에 쓰이는 래스터 해상도이며, 잘못된 값은 150으로 대체합니다 |
반환 값
이 멤버는 값을 반환하지 않습니다
사용 참고 사항
- 새 요청을 시작하면 새 페이지 집합을 예약하기 전에 이전 요청을 협조적으로 취소하고 합류합니다
RenderLoadedPageToBitmap,RenderLoadedPageToBitmapCached,GetLoadedCachedRenderedBitmap의 포그라운드 호출은 렌더링 전에 활성 prefetch 작업을 선점합니다- 취소 검사점은 콘텐츠 토큰화, 디스플레이 리스트 구성, 렌더러 재생 전반에 걸쳐 있고, 개별 코덱·필터·소스 읽기·운영체제 호출은 원자적으로 유지됩니다
- 캐시 조회와 공개는 직렬화되지만 컴파일과 래스터화는 캐시 잠금 밖에서 돌아가므로, 백그라운드 작업이 포그라운드 렌더링을 독점하지 않습니다
- 포그라운드 캐시 렌더는 cancellation이 마무리되는 동안 기존의 불변 메모리 캐시 비트맵을 복사할 수 있습니다. 복사 전에 일반 메모리 예약을 가져가고, 논리적 워커 완료를 기다린 뒤 반환합니다
- 포그라운드 캐시 미스는 새 문서 작업 전에 워커 완료를 기다립니다. 명시적 cancellation, 교체, 다시 로드, 파괴는 여전히 남아 있는 워커 스레드에 합류하고 해제합니다
- prefetch 요청이 활성인 동안에는 문서를 수정하거나 다시 로드하지 마십시오