THotPDF.BuildLoadedObjectDependencyGraph Method
現在読み込まれているドキュメントの決定論的な依存グラフを構築し、Catalog を根とする支配木を通じて推定保持メモリを帰属させます
宣言
function BuildLoadedObjectDependencyGraph(
out Nodes: THPDFObjectDependencyNodeArray;
out Edges: THPDFObjectDependencyEdgeArray;
out AInfo: THPDFObjectDependencyGraphInfo;
MaxObjects: Integer = 250000;
MaxEdges: Integer = 2000000
): boolean;
ノード
EstimatedShallowBytesはオブジェクトインスタンス、直接所有する値、辞書のキーとリスト、メモリ常駐のストリームペイロードを含み、参照先の間接オブジェクトは含みませんEstimatedRetainedBytesは、このノードが支配する Catalog 到達オブジェクトすべてのシャローサイズを加算します。共有される依存は 1 回だけ数えますImmediateDominatorObjectNumberとその世代番号は、最も近い必須の所有者を識別します。Catalog と到達不能なオブジェクトでは-1です- 入方向と出方向のカウントは参照スロットの重複を保持し、
ReachableFromCatalogは生存しているドキュメント構造と切り離されたオブジェクトを区別します
エッジと上限
各エッジはソースとターゲットのオブジェクト識別情報、参照スロットの辞書または配列パス、ターゲットがオブジェクト番号と世代で正確に解決されたかどうかを記録します
このメソッドは、呼び出し側が指定した上限を超えるオブジェクト数やエッジ数、256 レベルを超える直接オブジェクトの包含、不正な直接包含サイクル、128 収束パスを超える支配木解析を拒否します
メモリ値はアロケータ精度のプロセス実測値ではなく、帰属付けと比較のための移植性のある推定値です