THotPDF.BuildLoadedObjectDependencyGraph Method
Construit un graphe de dépendances déterministe pour le document chargé courant et attribue la mémoire retenue estimée via l’arbre de dominateurs enraciné au Catalog
Déclaration
function BuildLoadedObjectDependencyGraph(
out Nodes: THPDFObjectDependencyNodeArray;
out Edges: THPDFObjectDependencyEdgeArray;
out AInfo: THPDFObjectDependencyGraphInfo;
MaxObjects: Integer = 250000;
MaxEdges: Integer = 2000000
): boolean;
Nœuds
EstimatedShallowBytesinclut l’instance d’objet, les valeurs directement possédées, les clés et listes de dictionnaires et les charges utiles de streams résidents en mémoire, mais exclut les objets indirects référencésEstimatedRetainedBytesajoute les octets superficiels de chaque objet atteignable depuis le Catalog et dominé par ce nœud, en comptant les dépendances partagées une seule foisImmediateDominatorObjectNumberet sa génération identifient le propriétaire obligatoire le plus proche, ou-1pour le Catalog et les objets non atteignables- Les compteurs entrants et sortants préservent la multiplicité des slots de référence, tandis que
ReachableFromCatalogdistingue la structure vivante du document des objets détachés
Arêtes et bornes
Chaque arête enregistre les identités d’objets source et cible, le chemin de dictionnaire ou de tableau du slot de référence, et si la cible a été résolue exactement par numéro d’objet et génération
La méthode rejette les compteurs d’objets ou d’arêtes au-dessus des limites choisies par l’appelant, une contenance d’objets directs de plus de 256 niveaux, les cycles mal formés de contenance directe et une analyse de dominateurs dépassant 128 passes de convergence
Les valeurs mémoire sont des estimations portables destinées à l’attribution et à la comparaison, plutôt que des mesures exactes de l’allocateur du processus