THotPDF.RenderLoadedPagesParallelOrdered Method

Kokoaa ja renderöi ladatut sivut samanaikaisesti toimittaen valmiit bittikartat syöttöjärjestyksessä rajatun kutsusäikeen takaisinkutsun kautta

Määrittely

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;

Takaisinkutsu ja omistajuus

Callback suoritetaan sarjallisesti kutsusäikeessä nollapohjaisen syöttöpaikan, pyydetyn sivuindeksin, lainatun bittikartan ja peruutuslipun kanssa

Bittikartta on voimassa vain takaisinkutsun keston ajan ja vapautetaan heti takaisinkutsun palattua, joten kopioi tai koodaa se takaisinkutsun sisällä, kun tuloksen on säilyttävä sen kutsukerran yli

Aseta Cancel lopettaaksesi uusien sivujen vaatimisen, herätäksesi estetyt työntekijät, liittyäksesi lennossa olevaan työhön, vapauttaaksesi julkaisemattomat tulokset ja palauttaaksesi valmistuneiden takaisinkutsujen lukumäärän

Takaisinkutsun peruutus herättää myös muistivaraa odottavat työntekijät kääntämättä kyseistä sisäistä herätystä virheeksi; ulkoinen peruutustokeni tai takaisinkutsun poikkeus raportoi edelleen epäonnistumisen siivouksen jälkeen

Takapaine

OutputQueueDepth rajaa valmiit bittikartat mukaan lukien takaisinkutsussa aktiivisen bittikartan; ykkösen alapuoliset arvot valitsevat tehokkaan työntekijälukumäärän, ja sivulukumäärän yläpuoliset arvot puristetaan

Ajoittaja varaa tulostuskapasiteetin seuraavalle vaaditulle syöttöpaikalle, joten myöhemmät sivut eivät voi täyttää jonon ja estää järjestettyä edistymistä, kun aikaisempi sivu kootaan hitaammin

Kun PeakMemorySchedulerEnabled on käytössä, pyydetty rinnakkaisuus vähennetään suurimman sivuarvion ja tällä hetkellä käytettävissä olevan globaalin budjetin avulla, ja jokainen sivuvara pysyy aktiivisena työn vaatimisesta, kunnes sen lainattu bittikartta poistuu takaisinkutsusta

Muistivaraukset pyydetään syöttöjärjestyksessä ennen rinnakkaista kokoamista ja hahmontamista, joten myöhemmät sivut eivät voi ottaa seuraavan takaisinkutsun tarvitsemaa budjettia

Jonotettu tuloste kilpailee siksi reilusti aktiivisen kokoamisen ja toiston kanssa samasta prosessinlaajuisesta budjetista, kun taas peruutus tai epäonnistuminen vapauttaa julkaisemattomat varaukset ennen työntekijöihin liittymistä

Takaisinkutsu ei saa muuttaa eikä tuhota dokumenttia, kun työntekijät ovat aktiivisia

THPDFParallelRenderPipelineInfo · Näyttölistat ja painotuotanto