Penjadwalan Memori Puncak

HotPDF mengizinkan operasi ber-jejak-besar yang bersaing melalui satu anggaran byte seluruh-proses sebelum mereka mengalokasikan set kerja utama

Operasi yang tercakup

Setiap operasi memesan perkiraan konservatif yang diturunkan dari ukuran sumber, dimensi render, DPI, ambang aliran, dan jumlah pekerja, lalu melepaskan reservasi di batas telemetri operasi yang ada

Kebijakan penerimaan

Jalur tanpa-kontensi tidak mengalokasikan event tunggu, sedangkan operasi terkontensi menggunakan satu event privat dan tidak berputar

Konfigurasi

PDF.PeakMemorySchedulerEnabled := True;
PDF.PeakMemorySchedulerBudgetBytes := 768 * 1024 * 1024;

PDF.ResetPeakMemorySchedulerStatistics;
if PDF.GetPeakMemorySchedulerStatistics(Stats) then
begin
  WriteLn(Stats.PeakReservedBytes);
  WriteLn(Stats.DelayedAdmissionCount);
  WriteLn(Stats.TotalWaitMilliseconds);
end;

PeakMemorySchedulerEnabled bersifat per-komponen dan dapat melewati penerimaan untuk kerja terisolasi yang tepercaya, sedangkan PeakMemorySchedulerBudgetBytes mengonfigurasi penjadwal bersama seluruh-proses

Statistik

THPDFPeakMemorySchedulerStatistics melaporkan byte terpesan saat ini dan puncak, reservasi aktif saat ini dan puncak, penunggu saat ini dan puncak, penerimaan total dan tertunda, penerimaan berukuran-berlebih, pembatalan, dan waktu tunggu agregat

THPDFOperationTelemetry.ScheduledMemoryBytes, MemorySchedulerWaitMilliseconds, dan MemorySchedulerDelayed mengatribusikan biaya penjadwalan ke operasi terbaru

API terkait