THotPDF.RenderLoadedPagesParallel metódus

A megjelenítési lista összeállítását és lejátszását korlátozott munkavégzők között csővezetékeli, miközben a kimeneti tömb megtartja a bemeneti sorrendet

Deklaráció

function RenderLoadedPagesParallel(const PageIndices: array of Integer;
    DPI, MaxConcurrency: Integer; out Bitmaps: THPDFBitmapArray): Integer; overload;

function RenderLoadedPagesParallel(const PageIndices: array of Integer;
    DPI, MaxConcurrency: Integer; out Bitmaps: THPDFBitmapArray;
    out Info: THPDFParallelRenderPipelineInfo): Integer; overload;

Viselkedés

Az összeállítás a megjelenítési lista gyorsítótár-zárján kívül fut, így a nem kapcsolódó oldalak párhuzamosan fordíthatók, és az első kész oldal megkezdheti a renderelést, mielőtt a teljes bemeneti készlet összeállításra kerül

Az ütemező dinamikusan egyensúlyozza az összeállítási és lejátszási munkát, a munkavégzőket a MaxConcurrency értékre korlátozza, munkavégzőnként elkülöníti a renderelő állapotát, és a gyorsítótár-bejegyzéseket védett használatszámokon keresztül osztja meg

Amikor a PeakMemorySchedulerEnabled igaz, a hatékony munkavégző-szám a legnagyobb oldalbecslés az aktuálisan rendelkezésre álló globális költségvetés alapján csökken a normalizált kéréshez képest, majd minden igényelt oldal saját méltányos memóriafoglalást tart az összeállításon és lejátszáson keresztül

A Info paraméterrel rendelkező túlterhelés jelenti a kért és hatékony munkavégzőket, a memóriából származó munkavégző-korlátot, az oldalfoglalási becsléseket, a csúcs lefoglalt renderelési bájtokat, az ütemező belépéseket, a késleltetett oldalakat, a várakozási időt, az összeállítási és gyorsítótár-találati számokat, a befejezett kimenetet, a csúcs szakasz-párhuzamosságot, az első eredmény késleltetését, a teljes eltelt időt és az első bitkép befejezésekor összeállított oldalak számát

A Bitmaps minden nem nil bitképe a hívó tulajdona

A befejezett tömb-eredmények a hívó tulajdonában maradnak, miután a repülés közbeni foglalásaik felszabadulnak, ezért használja a RenderLoadedPagesParallelOrdered függvényt, amikor a teljes kimeneti készletnek magának is az ütemező költségvetésén belül kell maradnia

THPDFParallelRenderPipelineInfo · Megjelenítési listák és nyomtatási gyártás