Esta documentación está archivada y no tiene mantenimiento.

PerformanceCounterCategory.Create (Método) (String, String, PerformanceCounterCategoryType, CounterCreationDataCollection)

Nota: este método es nuevo en la versión 2.0 de .NET Framework.

Registra la categoría de contador de rendimiento personalizada que contiene los contadores especificados en el equipo local.

Espacio de nombres: System.Diagnostics
Ensamblado: System (en system.dll)

public static PerformanceCounterCategory Create (
	string categoryName,
	string categoryHelp,
	PerformanceCounterCategoryType categoryType,
	CounterCreationDataCollection counterData
)
public static PerformanceCounterCategory Create (
	String categoryName, 
	String categoryHelp, 
	PerformanceCounterCategoryType categoryType, 
	CounterCreationDataCollection counterData
)
public static function Create (
	categoryName : String, 
	categoryHelp : String, 
	categoryType : PerformanceCounterCategoryType, 
	counterData : CounterCreationDataCollection
) : PerformanceCounterCategory

Parámetros

categoryName

Nombre de la categoría de contador de rendimiento personalizada que se va a crear y registrar en el sistema.

categoryHelp

Descripción de la categoría personalizada.

categoryType

Uno de los valores de PerformanceCounterCategoryType.

counterData

CounterCreationDataCollection que especifica los contadores que se van a crear como parte de la nueva categoría.

Valor devuelto

PerformanceCounterCategory que está asociado a la nueva categoría personalizada, u objeto de rendimiento.

Tipo de excepciónCondición

ArgumentException

Un nombre de contador especificado dentro de la colección counterData es referencia de objeto null (Nothing en Visual Basic) o una cadena vacía ("").

O bien,

Un contador especificado dentro de la colección counterData ya existe.

O bien,

counterName tiene una sintaxis no válida. Puede que contenga caracteres de barra invertida ("\") o su longitud supere los 80 caracteres.

ArgumentNullException

El valor de categoryName es referencia de objeto null (Nothing en Visual Basic).

InvalidOperationException

Ya existe la categoría en el equipo local.

O bien,

El diseño de la colección counterData es incorrecto para los contadores base. Un contador de tipo AverageCount64, AverageTimer32, CounterMultiTimer, CounterMultiTimerInverse, CounterMultiTimer100Ns, CounterMultiTimer100NsInverse, RawFraction, SampleFraction o SampleCounter debe ir seguido inmediatamente de uno de los tipos de contador base (AverageBase, MultiBase, RawBase o SampleBase).

Win32Exception

Se ha producido un error en la llamada a una API del sistema subyacente.

El parámetro categoryType especifica si la categoría de contador de rendimiento es de una sola instancia o de varias instancias. De manera predeterminada, una categoría es de una sola instancia cuando se crea y se convierte en categoría de varias instancias al agregar otra instancia. Las categorías se crean cuando se configura una aplicación, y las instancias se agregan en tiempo de ejecución. En las versiones 1.0 y 1.1 de .NET Framework, no es preciso saber si la categoría de un contador de rendimiento es de una sola instancia o de varias. En Microsoft .NET Framework version 2.0, se utiliza la enumeración PerformanceCounterCategoryType para indicar si un contador de rendimiento puede tener varias instancias.

Las categorías de contador de rendimiento instaladas con .NET Framework 2.0 utilizan memoria compartida independiente, y cada categoría de contador de rendimiento tiene su propia memoria. Se puede especificar el tamaño de la memoria compartida independiente creando una clave del Registro DWORD, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<category name>\Performance\FileMappingSize con un valor como, por ejemplo, 131072, el valor predeterminado actual. Si la clave del Registro no está presente, se utiliza el valor del atributo fileMappingSize para el elemento performanceCounters especificado en el archivo Machine.config, lo que provoca una sobrecarga adicional en el procesamiento del archivo de configuración. Utilizando la clave del Registro podrá apreciar una mejora del rendimiento en el inicio de la aplicación.

En el siguiente ejemplo de código se muestra el uso del método Create. Se muestra cómo crear una categoría personalizada de contador de rendimiento de varias instancias para el número de pedidos por segundo.

CounterCreationData data1 = new CounterCreationData("Trucks",
    "Number of orders", PerformanceCounterType.NumberOfItems32);
CounterCreationData data2 = new CounterCreationData("Rate of sales",
    "Orders/second", PerformanceCounterType.RateOfCountsPerSecond32);
CounterCreationDataCollection ccds = new CounterCreationDataCollection();
ccds.Add(data1);
ccds.Add(data2);
Console.WriteLine("Creating Orders custom counter.");
if (!PerformanceCounterCategory.Exists("Orders"))
    PerformanceCounterCategory.Create("Orders",
        "Processed orders",
        PerformanceCounterCategoryType.MultiInstance,
        ccds);

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

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0
Mostrar: