THotPDF.RenderLoadedPageTilesParallel Method

Renderar tiles från en inläst sida på isolerade workers medan den anropande tråden lämnar ut utlånade bitmappar i row-major-ordning

Deklaration

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;

Strömning och ägarskap

Callback körs sekventiellt på den anropande tråden och tar emot tiles i row-major-ordning, även om workers färdigställer dem i en annan ordning

Varje bitmapp är utlånad endast under själva callback-anropet och frigörs omedelbart därefter, så kopiera eller koda den inne i callbacken om den ska finnas kvar

Sätt Cancel för att stoppa nya anspråk, väcka workrarna, frigöra bitmappar som aldrig publicerats och returnera antalet levererade callbacks

Callbacken får inte mutera eller förstöra dokumentet medan workers fortfarande är aktiva

Minne och delning

MaxWorkingBytes måste vara positivt och reducerar antalet workers utifrån den största konservativa tile-reservationen innan arbetet sätter igång

Varje worker behåller som mest en aktiv eller färdig tile, och den processomfattande schemaläggaren för toppminne kan fördröja den ytterligare när annat dokumentarbete konkurrerar

Parallella renderare delar kopierade oföränderliga Type 3-glyftokensekvenser och halftone-tröskelskärmar via den begränsade budgeten i RendererSharedCacheMaxBytes

THPDFParallelTileRenderInfo · Display Lists and Print Production