共用方式為


設定物件參考追蹤

您可以使用 Gflags 來啟用、停用及設定 Windows 的物件參考追蹤功能。 每當對象參考計數器遞增或遞減時,對象參考追蹤就會記錄循序堆疊追蹤。 追蹤可協助您偵測對象參考錯誤,包括雙重取值、參考失敗,以及無法取值物件。 只有 Windows Vista 和更新版本的 Windows 才支援此功能。 如需此功能的詳細資訊,請參閱 對象參考追蹤

啟用物件參考追蹤

  1. 在 [Gflags] 對話框中,選取 [系統登錄 ] 索引標籤或 [ 核心旗標] 索引標籤

  2. 在 [對象參考追蹤] 區段中,選取 [ 啟用]。

    您必須將追蹤限制為具有指定集區標記的物件、由指定進程所建立的物件,或兩者。

  3. 若要將追蹤限制為具有特定集區卷標的物件,請輸入集區標籤名稱。 若要列出多個集區標籤,請使用分號 (;) 來分隔集區卷標。 當您列出多個集區標籤時,追蹤會包含具有任何指定集區標籤的物件。 集區標籤會區分大小寫。 使用 !pool!poolfind 調試程式命令來判斷集區名稱。

    例如,Fred;Tag1。

  4. 若要將追蹤限制為特定進程所建立的物件,請輸入進程的映像名稱。 您只能指定影像檔名稱。

    當您同時指定集區標籤和進程時,追蹤會包含由具有任何指定集區標記的進程所建立的物件。

  5. 若要在追蹤物件終結之後保留追蹤,請選取 [ 永久]。

    當您選取 [永久] 時,追蹤會保留到停用對象參考追蹤,或關閉或重新啟動 Windows 為止。

  6. 按兩下 [ 套用 ] 或 [ 確定]。

下列螢幕快照顯示在「Kernel Flags」索引標籤上啟用了物件參考追蹤。

[Gflags] 對話框中 [核心旗標] 標籤的螢幕截圖,其中啟用了對象參考追蹤。

此追蹤將只包含由 notepad.exe 行程建立,且具有集區標籤 FredTag1 的物件。 因為這是運行時間 (核心旗標) 設定,因此追蹤會立即啟動。 如果是登錄設定,您必須重新啟動 Windows 以啟動追蹤。

停用對象參考追蹤

  1. 在 [Gflags] 對話框中,選取 [系統登錄 ] 索引標籤或 [ 核心旗標] 索引 標籤。物件參照追蹤只會出現在 Windows Vista 和更新版本的 Windows 中。

  2. 在 [對象參考追蹤] 區段中,清除 [ 啟用 ] 複選框。