PerformanceCounterCategory.ReadCategory 方法

定義

讀取與這個效能計數器分類相關的所有計數器和效能物件執行個體資料。

C#
public System.Diagnostics.InstanceDataCollectionCollection ReadCategory ();

傳回

InstanceDataCollectionCollection,包含分類的計數器和效能物件執行個體資料。

例外狀況

CategoryName 屬性為 null。 屬性可能尚未設定。

對基礎系統 API 的呼叫失敗。

以不具有系統管理員權限執行的程式碼嘗試讀取效能計數器。

範例

下列程式代碼範例會 PerformanceCounterCategory 為指定的 PerformanceCounterCategory 名稱建立 。 然後,它會使用 ReadCategory 傳回 ,InstanceDataCollectionCollection其中包含 內PerformanceCounterCategory物件之所有實例的PerformanceCounter實例數據。

C#

// Process the InstanceDataCollectionCollection for this category.
PerformanceCounterCategory pcc = new PerformanceCounterCategory(categoryName);
InstanceDataCollectionCollection idColCol = pcc.ReadCategory();
InstanceDataCollection[] idColArray = new InstanceDataCollection[idColCol.Count];

Console.WriteLine("InstanceDataCollectionCollection for \"{0}\" " +
    "has {1} elements.", categoryName, idColCol.Count);

備註

您必須先設定 屬性, CategoryName 才能呼叫 ReadCategory

一次讀取整個類別可以有效率地讀取單一計數器,因為系統提供數據的方式。

備註

若要從 Windows Vista 和更新版本中的非互動式登入會話讀取性能計數器、Windows XP Professional x64 Edition 或 Windows Server 2003,您必須是 效能監視器 Users 群組的成員,或具有系統管理許可權。

若要避免提高許可權以存取 Windows Vista 和更新版本中的性能計數器,請將您自己新增至 效能監視器 Users 群組。

在 Windows Vista (含) 以後版本中,使用者帳戶控制 (UAC) 會判斷使用者的權限。 如果您是內建 Administrators 群組的成員,系統會將兩個執行階段存取語彙基元 (Token) 指派給您:標準使用者存取語彙基元及管理員存取語彙基元。 根據預設,您會屬於標準使用者角色。 若要執行存取性能計數器的程式代碼,您必須先將許可權從標準使用者提升為系統管理員。 您可以在啟動應用程式時,以滑鼠右鍵按一下應用程式圖示,並指出您想要以系統管理員身分執行,藉此提高為系統管理員權限。

適用於

產品 版本
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

另請參閱