THotPDF.BuildLoadedObjectDependencyGraph Method
Mevcut yüklenmiş belge için deterministik bir dependency graph oluşturur ve tahmini retained belleği Catalog köklü dominator tree üzerinden atfeder
Bildirim
function BuildLoadedObjectDependencyGraph(
out Nodes: THPDFObjectDependencyNodeArray;
out Edges: THPDFObjectDependencyEdgeArray;
out AInfo: THPDFObjectDependencyGraphInfo;
MaxObjects: Integer = 250000;
MaxEdges: Integer = 2000000
): boolean;
Düğümler
EstimatedShallowBytes; object instance'ını, doğrudan sahip olunan değerleri, dictionary anahtarlarını ve listeleri, bellekte yer kaplayan stream payload'larını kapsar; referans verilen indirect object'leri hariç tutarEstimatedRetainedBytes, bu düğümün dominator'ü olduğu her Catalog-erişilebilir object'in shallow baytlarını ekler; paylaşılan dependency'leri yalnızca bir kez sayarImmediateDominatorObjectNumberve generation değeri en yakın zorunlu sahibi belirtir; Catalog ve erişilemeyen nesneler için-1döner- Gelen ve giden sayılar reference-slot çokluklarını korur;
ReachableFromCatalogise canlı belge yapısını kopmuş object'lerden ayırır
Kenarlar ve sınırlar
Her kenar; kaynak ve hedef object kimliklerini, reference slot'unun dictionary veya dizi path'ini ve hedefin object number ile generation'a göre tam olarak çözümlenip çözümlenmediğini kaydeder
Metot; çağıranın seçtiği sınırları aşan object veya kenar sayılarını, 256 seviyeden derin direct-object içerme yapılarını, bozuk direct containment döngülerini ve 128 yakınsama turunu aşan dominator analizini reddeder
Bellek değerleri, allocator kesinliğinde süreç ölçümleri değil, atfetme ve karşılaştırma için taşınabilir tahminlerdir