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