Método THotPDF.BuildLoadedObjectDependencyGraph
Construye un grafo de dependencias determinista para el documento cargado actual y atribuye la memoria retenida estimada a través del árbol de dominadores con raíz en el Catalog
Declaración
function BuildLoadedObjectDependencyGraph(
out Nodes: THPDFObjectDependencyNodeArray;
out Edges: THPDFObjectDependencyEdgeArray;
out AInfo: THPDFObjectDependencyGraphInfo;
MaxObjects: Integer = 250000;
MaxEdges: Integer = 2000000
): boolean;
Nodos
EstimatedShallowBytesincluye la instancia del objeto, los valores de propiedad directa, las claves y listas del diccionario y las cargas útiles de flujo residentes en memoria, pero excluye los objetos indirectos referenciadosEstimatedRetainedBytessuma los bytes superficiales de cada objeto alcanzable desde Catalog dominado por este nodo, contando las dependencias compartidas una sola vezImmediateDominatorObjectNumbery su generación identifican el propietario obligatorio más cercano, o-1para el Catalog y los objetos inalcanzables- Los recuentos de entrada y salida conservan la multiplicidad de las ranuras de referencia, mientras que
ReachableFromCatalogdistingue la estructura viva del documento de los objetos desvinculados
Aristas y límites
Cada arista registra las identidades de los objetos de origen y destino, la ruta de diccionario o matriz de la ranura de referencia y si el destino se resolvió exactamente por número de objeto y generación
El método rechaza recuentos de objetos o aristas superiores a los límites elegidos por el llamador, la contención directa de objetos a más de 256 niveles, los ciclos de contención directa mal formados y el análisis de dominadores que supera 128 pasadas de convergencia
Los valores de memoria son estimaciones portables para la atribución y la comparación, no mediciones de proceso exactas del asignador