Método THotPDF.RenderLoadedPageTilesParallel
Renderiza tiles de una página cargada en workers aislados mientras el hilo llamador entrega bitmaps prestados en orden por filas
Declaración
function RenderLoadedPageTilesParallel(PageIndex, DPI,
TileWidthPixels, TileHeightPixels, MaxConcurrency: Integer;
MaxWorkingBytes: Int64; Callback: THPDFRenderTileEvent): Integer; overload;
function RenderLoadedPageTilesParallel(PageIndex, DPI,
TileWidthPixels, TileHeightPixels, MaxConcurrency: Integer;
MaxWorkingBytes: Int64; Callback: THPDFRenderTileEvent;
out Info: THPDFParallelTileRenderInfo): Integer; overload;
Streaming y propiedad
Callback se ejecuta en serie en el hilo llamador y recibe los tiles en orden por filas, aunque los workers los completen en otro orden
Cada bitmap solo se presta durante la invocación del callback y se libera inmediatamente después, así que cópielo o codifíquelo dentro del callback si necesita que sobreviva
Active Cancel para detener nuevas reclamaciones, despertar a los workers, liberar los bitmaps sin publicar y devolver el número de callbacks entregados
El callback no debe mutar ni destruir el documento mientras queden workers activos
Memoria y compartición
MaxWorkingBytes debe ser positivo y reduce el número de workers a partir de la mayor reserva conservadora de tile antes de empezar el trabajo
Cada worker retiene como máximo un tile activo o completado, y el planificador de memoria pico de todo el proceso puede retrasarlo aún más si hay trabajo de otros documentos compitiendo
Los renderizadores paralelos comparten copias inmutables de secuencias de tokens de glifos Type 3 y de screens de umbral de halftone dentro del presupuesto acotado de RendererSharedCacheMaxBytes
THPDFParallelTileRenderInfo · Listas de visualización y producción de impresión