This documentation is archived and is not being maintained.

PerformanceCounterCategory.ReadCategory Method

Reads all the counter and performance object instance data that is associated with this performance counter category.

Namespace: System.Diagnostics
Assembly: System (in system.dll)

public InstanceDataCollectionCollection ReadCategory ()
public InstanceDataCollectionCollection ReadCategory ()
public function ReadCategory () : InstanceDataCollectionCollection

Return Value

An InstanceDataCollectionCollection that contains the counter and performance object instance data for the category.

Exception typeCondition


The CategoryName property is a null reference (Nothing in Visual Basic). The property might not have been set.


A call to an underlying system API failed.

You must set the CategoryName property before you call ReadCategory.

Reading the entire category at once can be as efficient as reading a single counter because of the way that the system provides the data.

The following code example creates a PerformanceCounterCategory for a specified PerformanceCounterCategory name. It then uses ReadCategory to return an InstanceDataCollectionCollection that contains instance data for all the instances of the PerformanceCounter objects within the PerformanceCounterCategory.

' Process the InstanceDataCollectionCollection for this category.
Dim pcc As New PerformanceCounterCategory(categoryName)
Dim idColCol As InstanceDataCollectionCollection = pcc.ReadCategory()
Dim idColArray(idColCol.Count - 1) As InstanceDataCollection

Console.WriteLine("InstanceDataCollectionCollection for ""{0}"" " & _
    "has {1} elements.", categoryName, idColCol.Count)

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0