Krasj-isolerte kodek-arbeidere

HotPDF kan flytte høyrisiko-DCTDecode-, JPXDecode- og JBIG2Decode-bildeavkoding ut av vertsprosessen

Isolasjonsmoduser

Når en tilgjengelig arbeider aksepterer en forespørsel, forsøker ikke cimAutomatic mislykket eller ondsinnet inndata på nytt i vertsprosessen

Prosessgrense

Hver avkodingsforespørsel kjører i en fersk skjult prosess tildelt en enkeltprosess Windows Job Object

Konfigurasjon

PDF.CodecIsolationMode := cimRequired;
PDF.CodecWorkerExecutable :=
  'C:\Program Files\MyApp\HotPDFCodecWorker.exe';
PDF.CodecWorkerTimeoutMilliseconds := 5000;
PDF.CodecWorkerMemoryLimitBytes := 256 * 1024 * 1024;

Bitmap := PDF.ExtractLoadedImage(0);
if Bitmap = nil then
begin
  PDF.GetLastCodecWorkerInfo(Info);
  Writeln(Ord(Info.Status), ': ', Info.ErrorMessage);
end;

En tom CodecWorkerExecutable løses til HotPDFCodecWorker.exe ved siden av den gjeldende applikasjonen

Telemetri

GetLastCodecWorkerInfo rapporterer statusen, prosessidentifikatoren, avslutningskoden, forløpte millisekunder og en avgrenset verts-side-diagnostikk

GetLastJPEGReducedDecodeInfo rapporterer kilde-, skalert-, utdata- og skannelinje-geometri etter en isolert redusert-JPEG-forespørsel

Distinkte statuser dekker utilgjengelige eller ikke-lagbare arbeidere, tidsavbrudd, krasj, avvisning av avkoding, protokoll-avvik og avkodet-utdata-grenser

Bygging og distribusjon

build-HotPDF-Codec-Worker.cmd

Byggekommandoen sender ut separate Win32- og Win64-arbeidere under tools\CodecWorker\<platform>\Release; distribuer den arbeideren som matcher vertsprosess-arkitekturen

Relaterte API-er