THotPDF.RenderLoadedPagesParallelOrdered Method

Sudaro ir atvaizduoja įkeltus puslapius lygiagrečiai, pristatydamas užbaigtus bitmap įvesties tvarka per apribotą kviečiančiosios gijos atgalinį kvietimą

Deklaracija

function RenderLoadedPagesParallelOrdered(
    const PageIndices: array of Integer; DPI, MaxConcurrency,
    OutputQueueDepth: Integer; Callback: THPDFParallelRenderPageEvent): Integer; overload;

function RenderLoadedPagesParallelOrdered(
    const PageIndices: array of Integer; DPI, MaxConcurrency,
    OutputQueueDepth: Integer; Callback: THPDFParallelRenderPageEvent;
    out Info: THPDFParallelRenderPipelineInfo): Integer; overload;

Atgalinis kvietimas ir nuosavybė

Callback vykdomas nuosekliai kviečiančiojoje gijoje su nuliu pagrįstu įvesties padėtimi, užklaustu puslapio indeksu, pasiskolintu bitmap ir atšaukimo vėliavėle

Bitmap galioja tik atgalinio kvietimo trukmę ir atleidžiamas iškart po to, kai kvietimas grįžta, todėl, jei rezultatas turi išgyventi tą kvietimą, nukopijuokite arba užkoduokite jį atgalinio kvietimo viduje

Nustatykite Cancel, kad sustabdytumėte naujų puslapių užklausas, pabustumėte užblokuotus darbuotojus, prisijungtumėte prie vykdomų darbų, atleistumėte nepaskelbtus rezultatus ir grąžintumėte užbaigtų atgalinių kvietimų skaičių

Atšaukimas per atgalinį kvietimą taip pat pabudina darbuotojus, laukiančius atminties rezervacijos, nepaversdamas to vidinio pabudimo klaida; išorinis atšaukimo žetonas arba atgalinio kvietimo išimtis po apvalymo vis tiek praneša nesėkmę

Atgalinis slėgis

OutputQueueDepth apriboja užbaigtus bitmap, įskaitant atgaliniame kvietime aktyvų bitmap; reikšmės žemiau vieneto pasirenka efektyvų darbuotojų skaičių, o reikšmės virš puslapių skaičiaus apipjaustomos

Planuotojas rezervuoja išvesties pajėgumą kitai reikalingai įvesties padėčiai, todėl vėlesni puslapiai negali užpildyti eilės ir užblokuoti sutvarkytos pažangos, kai ankstesnis puslapis sudaromas lėčiau

Naudojant PeakMemorySchedulerEnabled, užklaustas gretimumas sumažinamas pagal didžiausią puslapio įvertinimą ir šiuo metu prieinamą pasaulinį biudžetą, o kiekviena puslapio rezervacija lieka aktyvi nuo darbo užklausos iki tol, kol jo pasiskolintas bitmap palieka atgalinį kvietimą

Atminties rezervacijos prašomos įvesties tvarka prieš lygiagretųjį sudarymą ir atvaizdavimą, todėl vėlesni puslapiai negali pasisavinti biudžeto, reikalingo kitam atgaliniam kvietimui

Eilėje esanti išvestis todėl sąžiningai konkuruoja su aktyvia sudarymu ir atkūrimu dėl to paties viso proceso biudžeto, o atšaukimas arba nesėkmė atleidžia nepaskelbtas rezervacijas prieš prisijungiant prie darbuotojų

Callback negali keisti ar naikinti dokumento, kol veikia worker'iai

THPDFParallelRenderPipelineInfo · Display Lists and Print Production