Csúcsmemória-ütemezés

A HotPDF a versengő, nagy lábnyomú műveleteket egy folyamatszintű bájtkereten keresztül engedi be, mielőtt azok lefoglalnák a fő munkahalmazaikat

Lefedett műveletek

Minden művelet a forrásméretéből, renderelési méreteiből, DPI-jéből, folyamküszöbéből és dolgozószámából származtatott konzervatív becslést foglal le, majd a meglévő művelet-telemetria határán felszabadítja a foglalást

Beengedési politika

A versenymentes útvonal nem foglal várakozási eseményt, míg a versengő műveletek egy privát eseményt használnak, és nem pörögnek

Konfiguráció

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;

A PeakMemorySchedulerEnabled komponensenkénti, és megkerülheti a beengedést a megbízható elkülönített munkához, míg a PeakMemorySchedulerBudgetBytes a megosztott folyamatszintű ütemezőt konfigurálja

Statisztikák

A THPDFPeakMemorySchedulerStatistics jelenti az aktuális és csúcs lefoglalt bájtokat, az aktuális és csúcs aktív foglalásokat, az aktuális és csúcs várakozókat, a teljes és késleltetett beengedéseket, a túlméretezett beengedéseket, a megszakításokat és az összesített várakozási időt

A THPDFOperationTelemetry.ScheduledMemoryBytes, MemorySchedulerWaitMilliseconds és MemorySchedulerDelayed az ütemezési költséget a legutóbbi művelethez rendeli

Kapcsolódó API-k