PerformanceCounterCategory.Create 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
사용자 지정 성능 카운터 범주와 하나 이상의 카운터를 시스템에 등록합니다.
오버로드
| Name | Description |
|---|---|
| Create(String, String, String, String) |
사용되지 않음.
사용되지 않음.
사용되지 않음.
로컬 컴퓨터에서 단일 유형의 |
| Create(String, String, PerformanceCounterCategoryType, String, String) |
로컬 컴퓨터에서 단일 유형의 NumberOfItems32 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다. |
| Create(String, String, CounterCreationDataCollection) |
사용되지 않음.
사용되지 않음.
사용되지 않음.
로컬 컴퓨터에서 지정된 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다. |
| Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection) |
로컬 컴퓨터에서 지정된 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다. |
Create(String, String, String, String)
주의
This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.
주의
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202
주의
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. https://go.microsoft.com/fwlink/?linkid=14202
로컬 컴퓨터에서 단일 유형의 NumberOfItems32 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::String ^ counterName, System::String ^ counterHelp);
[System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. https://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[<System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. https://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterName As String, counterHelp As String) As PerformanceCounterCategory
매개 변수
- categoryName
- String
만들고 시스템에 등록할 사용자 지정 성능 카운터 범주의 이름입니다.
- categoryHelp
- String
사용자 지정 범주에 대한 설명입니다.
- counterName
- String
새 범주의 일부로 만들 형식 NumberOfItems32의 새 카운터 이름입니다.
- counterHelp
- String
새 사용자 지정 범주와 연결된 카운터에 대한 설명입니다.
반품
새 시스템 범주 또는 성능 개체와 연결된 A PerformanceCounterCategory 입니다.
- 특성
예외
counterName 가 null 빈 문자열("")인 경우
-또는-
지정 counterName 한 카운터가 이미 있습니다.
-또는-
counterName 구문이 잘못되었습니다. 백슬래시 문자("\")를 포함하거나 길이가 80자를 초과할 수 있습니다.
범주가 이미 로컬 컴퓨터에 있습니다.
기본 시스템 API에 대한 호출이 실패했습니다.
관리 권한 없이 실행되는 코드가 성능 카운터를 읽으려고 했습니다.
설명
메모
Windows Vista 이상, Windows XP Professional x64 Edition 또는 Windows Server 2003의 비대화형 로그온 세션에서 성능 카운터를 읽으려면 성능 모니터 사용자 그룹의 구성원이거나 관리 권한이 있어야 합니다.
Windows Vista 이상에서 성능 카운터에 액세스하기 위해 권한을 상승시킬 필요가 없도록 하려면 성능 모니터 사용자 그룹에 자신을 추가합니다.
Windows Vista 이상에서 UAC(사용자 계정 컨트롤)는 사용자의 권한을 결정합니다. 기본 제공 관리자 그룹의 구성원인 경우 표준 사용자 액세스 토큰과 관리자 액세스 토큰이라는 두 개의 런타임 액세스 토큰이 할당됩니다. 기본적으로 표준 사용자 역할에 있습니다. 성능 카운터에 액세스하는 코드를 실행하려면 먼저 표준 사용자에서 관리자로 권한을 상승시켜야 합니다. 애플리케이션 아이콘을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행하려는 경우 애플리케이션을 시작할 때 이 작업을 수행할 수 있습니다.
추가 정보
적용 대상
Create(String, String, PerformanceCounterCategoryType, String, String)
로컬 컴퓨터에서 단일 유형의 NumberOfItems32 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::String ^ counterName, System::String ^ counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, string counterName, string counterHelp);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterName As String, counterHelp As String) As PerformanceCounterCategory
매개 변수
- categoryName
- String
만들고 시스템에 등록할 사용자 지정 성능 카운터 범주의 이름입니다.
- categoryHelp
- String
사용자 지정 범주에 대한 설명입니다.
- categoryType
- PerformanceCounterCategoryType
범주PerformanceCounterCategoryTypeMultiInstanceSingleInstance가 Unknown 있는지 여부를 지정하는 값 중 하나입니다.
- counterName
- String
새 범주의 일부로 만들 새 카운터의 이름입니다.
- counterHelp
- String
새 사용자 지정 범주와 연결된 카운터에 대한 설명입니다.
반품
새 시스템 범주 또는 성능 개체와 연결된 A PerformanceCounterCategory 입니다.
예외
counterName 가 null 빈 문자열("")인 경우
-또는-
지정 counterName 한 카운터가 이미 있습니다.
-또는-
counterName 구문이 잘못되었습니다. 백슬래시 문자("\")를 포함하거나 길이가 80자를 초과할 수 있습니다.
범주가 이미 로컬 컴퓨터에 있습니다.
기본 시스템 API에 대한 호출이 실패했습니다.
관리 권한 없이 실행되는 코드가 성능 카운터를 읽으려고 했습니다.
예제
다음 코드 예제에서는 메서드의 사용을 보여 있습니다 Create . 이 예제에서는 사용자 지정 단일 인스턴스 성능 카운터 범주를 만드는 방법을 보여 줍니다.
Console.WriteLine("Creating Inventory custom counter");
if (!PerformanceCounterCategory.Exists("Inventory"))
PerformanceCounterCategory.Create("Inventory",
"Truck inventory",
PerformanceCounterCategoryType.SingleInstance,
"Trucks", "Number of trucks on hand");
Console.WriteLine("Creating Inventory custom counter")
If Not PerformanceCounterCategory.Exists("Inventory") Then
PerformanceCounterCategory.Create("Inventory", "Truck inventory", PerformanceCounterCategoryType.SingleInstance, "Trucks", "Number of trucks on hand")
End If
설명
이 매개 변수는 categoryType 성능 카운터 범주가 단일 인스턴스인지 다중 인스턴스인지를 지정합니다. 기본적으로 범주는 만들 때 단일 인스턴스이며 다른 인스턴스가 추가될 때 다중 인스턴스가 됩니다. 범주는 애플리케이션이 설정되고 런타임에 인스턴스가 추가되면 만들어집니다.
PerformanceCounterCategoryType 열거형은 성능 카운터에 여러 인스턴스가 있을 수 있는지 여부를 나타내는 데 사용됩니다.
.NET 함께 설치된 성능 카운터 범주는 각 성능 카운터 범주에 고유한 메모리가 있는 별도의 공유 메모리를 사용합니다. 범주 이름\성능과 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<레지스트리 키에 FileMappingSize라는 DWORD를 만들어 별도의 공유 메모리 크기를 지정할 수 있습니다.> FileMappingSize 값은 범주의 공유 메모리 크기로 설정됩니다. 기본 크기는 131072 10진수입니다. FileMappingSize 값이 없 fileMappingSize 으면 Machine.config 파일에 지정된 요소의 특성 값 performanceCounters 이 사용되어 구성 파일 처리에 추가 오버헤드가 발생합니다. 레지스트리에서 파일 매핑 크기를 설정하여 애플리케이션 시작에 대한 성능 향상을 실현할 수 있습니다.
메모
애플리케이션을 실행하는 동안이 아니라 애플리케이션을 설치하는 동안 새 성능 카운터 범주를 만드는 것이 좋습니다. 이렇게 하면 운영 체제에서 등록된 성능 카운터 범주 목록을 새로 고칠 수 있습니다. 목록을 새로 고치지 않으면 범주를 사용하려는 시도가 실패합니다.
메모
Windows Vista 이상, Windows XP Professional x64 Edition 또는 Windows Server 2003의 비대화형 로그온 세션에서 성능 카운터를 읽으려면 성능 모니터 사용자 그룹의 구성원이거나 관리 권한이 있어야 합니다.
Windows Vista 이상에서 성능 카운터에 액세스하기 위해 권한을 상승시킬 필요가 없도록 하려면 성능 모니터 사용자 그룹에 자신을 추가합니다.
Windows Vista 이상에서 UAC(사용자 계정 컨트롤)는 사용자의 권한을 결정합니다. 기본 제공 관리자 그룹의 구성원인 경우 표준 사용자 액세스 토큰과 관리자 액세스 토큰이라는 두 개의 런타임 액세스 토큰이 할당됩니다. 기본적으로 표준 사용자 역할에 있습니다. 성능 카운터에 액세스하는 코드를 실행하려면 먼저 표준 사용자에서 관리자로 권한을 상승시켜야 합니다. 애플리케이션 아이콘을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행하려는 경우 애플리케이션을 시작할 때 이 작업을 수행할 수 있습니다.
추가 정보
적용 대상
Create(String, String, CounterCreationDataCollection)
주의
This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.
주의
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202
주의
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. https://go.microsoft.com/fwlink/?linkid=14202
로컬 컴퓨터에서 지정된 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::CounterCreationDataCollection ^ counterData);
[System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. https://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[<System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. https://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterData As CounterCreationDataCollection) As PerformanceCounterCategory
매개 변수
- categoryName
- String
만들고 시스템에 등록할 사용자 지정 성능 카운터 범주의 이름입니다.
- categoryHelp
- String
사용자 지정 범주에 대한 설명입니다.
- counterData
- CounterCreationDataCollection
새 범주의 일부로 만들 카운터를 지정하는 A CounterCreationDataCollection 입니다.
반품
새 사용자 지정 범주 또는 성능 개체와 연결된 A PerformanceCounterCategory 입니다.
- 특성
예외
컬렉션 내에 counterData 지정된 카운터 이름 또는 빈 문자열("")입니다 null .
-또는-
컬렉션 내에 지정된 카운터가 counterData 이미 있습니다.
매개 변수는 categoryName .입니다 null.
범주가 이미 로컬 컴퓨터에 있습니다.
-또는-
기본 카운터의 counterData 경우 컬렉션의 레이아웃이 올바르지 않습니다. 형식AverageCount64의 카운터, AverageTimer32, CounterMultiTimer, CounterMultiTimerInverse, CounterMultiTimer100Ns, CounterMultiTimer100NsInverseRawFractionSampleFraction 또는 SampleCounter 기본 카운터 형식 중 하나(AverageBase, MultiBase, RawBase또는SampleBase)가 바로 뒤에 와야 합니다.
기본 시스템 API에 대한 호출이 실패했습니다.
관리 권한 없이 실행되는 코드가 성능 카운터를 읽으려고 했습니다.
설명
메모
Windows Vista 이상, Windows XP Professional x64 Edition 또는 Windows Server 2003의 비대화형 로그온 세션에서 성능 카운터를 읽으려면 성능 모니터 사용자 그룹의 구성원이거나 관리 권한이 있어야 합니다.
Windows Vista 이상에서 성능 카운터에 액세스하기 위해 권한을 상승시킬 필요가 없도록 하려면 성능 모니터 사용자 그룹에 자신을 추가합니다.
Windows Vista 이상에서 UAC(사용자 계정 컨트롤)는 사용자의 권한을 결정합니다. 기본 제공 관리자 그룹의 구성원인 경우 표준 사용자 액세스 토큰과 관리자 액세스 토큰이라는 두 개의 런타임 액세스 토큰이 할당됩니다. 기본적으로 표준 사용자 역할에 있습니다. 성능 카운터에 액세스하는 코드를 실행하려면 먼저 표준 사용자에서 관리자로 권한을 상승시켜야 합니다. 애플리케이션 아이콘을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행하려는 경우 애플리케이션을 시작할 때 이 작업을 수행할 수 있습니다.
추가 정보
적용 대상
Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection)
로컬 컴퓨터에서 지정된 카운터를 포함하는 사용자 지정 성능 카운터 범주를 등록합니다.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::Diagnostics::CounterCreationDataCollection ^ counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, System.Diagnostics.CounterCreationDataCollection counterData);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterData As CounterCreationDataCollection) As PerformanceCounterCategory
매개 변수
- categoryName
- String
만들고 시스템에 등록할 사용자 지정 성능 카운터 범주의 이름입니다.
- categoryHelp
- String
사용자 지정 범주에 대한 설명입니다.
- categoryType
- PerformanceCounterCategoryType
값 중 PerformanceCounterCategoryType 하나입니다.
- counterData
- CounterCreationDataCollection
새 범주의 일부로 만들 카운터를 지정하는 A CounterCreationDataCollection 입니다.
반품
새 사용자 지정 범주 또는 성능 개체와 연결된 A PerformanceCounterCategory 입니다.
예외
컬렉션 내에 counterData 지정된 카운터 이름 또는 빈 문자열("")입니다 null .
-또는-
컬렉션 내에 지정된 카운터가 counterData 이미 있습니다.
categoryType값이 다음 값MultiInstanceSingleInstance의 범위를 벗어났습니다Unknown.
범주가 이미 로컬 컴퓨터에 있습니다.
-또는-
기본 카운터의 counterData 경우 컬렉션의 레이아웃이 올바르지 않습니다. 형식AverageCount64, ,AverageTimer32, CounterMultiTimer, CounterMultiTimerInverse, CounterMultiTimer100Ns, CounterMultiTimer100NsInverse, RawFractionSampleFractionSampleCounter, 또는 즉시 뒤에 기본 카운터 형식 중 하나(AverageBase, MultiBase, RawBase또는SampleBase)가 와야 하는 카운터입니다.
기본 시스템 API에 대한 호출이 실패했습니다.
관리 권한 없이 실행되는 코드가 성능 카운터를 읽으려고 했습니다.
예제
다음 코드 예제에서는 메서드의 사용을 보여 있습니다 Create . 이 예제에서는 초당 주문 수에 대한 사용자 지정 다중 인스턴스 성능 카운터 범주를 만드는 방법을 보여 줍니다.
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);
Dim data1 As New CounterCreationData("Trucks", "Number of orders", PerformanceCounterType.NumberOfItems32)
Dim data2 As New CounterCreationData("Rate of sales", "Orders/second", PerformanceCounterType.RateOfCountsPerSecond32)
Dim ccds As New CounterCreationDataCollection()
ccds.Add(data1)
ccds.Add(data2)
Console.WriteLine("Creating Orders custom counter.")
If Not PerformanceCounterCategory.Exists("Orders") Then
PerformanceCounterCategory.Create("Orders", "Processed orders", PerformanceCounterCategoryType.MultiInstance, ccds)
End If
설명
이 매개 변수는 categoryType 성능 카운터 범주가 단일 인스턴스인지 다중 인스턴스인지를 지정합니다. 기본적으로 범주는 만들 때 단일 인스턴스이며 다른 인스턴스가 추가될 때 다중 인스턴스가 됩니다. 범주는 애플리케이션이 설정되고 런타임에 인스턴스가 추가되면 만들어집니다.
PerformanceCounterCategoryType 열거형은 성능 카운터에 여러 인스턴스가 있을 수 있는지 여부를 나타내는 데 사용됩니다.
.NET 함께 설치된 성능 카운터 범주는 각 성능 카운터 범주에 고유한 메모리가 있는 별도의 공유 메모리를 사용합니다. 범주 이름\성능과 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<레지스트리 키에 FileMappingSize라는 DWORD를 만들어 별도의 공유 메모리 크기를 지정할 수 있습니다.> FileMappingSize 값은 범주의 공유 메모리 크기로 설정됩니다. 기본 크기는 131072 10진수입니다. FileMappingSize 값이 없 fileMappingSize 으면 Machine.config 파일에 지정된 요소의 특성 값 performanceCounters 이 사용되어 구성 파일 처리에 추가 오버헤드가 발생합니다. 레지스트리에서 파일 매핑 크기를 설정하여 애플리케이션 시작에 대한 성능 향상을 실현할 수 있습니다.
메모
애플리케이션을 실행하는 동안이 아니라 애플리케이션을 설치하는 동안 새 성능 카운터 범주를 만드는 것이 좋습니다. 이렇게 하면 운영 체제에서 등록된 성능 카운터 범주 목록을 새로 고칠 수 있습니다. 목록을 새로 고치지 않으면 범주를 사용하려는 시도가 실패합니다.
메모
Windows Vista 이상, Windows XP Professional x64 Edition 또는 Windows Server 2003의 비대화형 로그온 세션에서 성능 카운터를 읽으려면 성능 모니터 사용자 그룹의 구성원이거나 관리 권한이 있어야 합니다.
Windows Vista 이상에서 성능 카운터에 액세스하기 위해 권한을 상승시킬 필요가 없도록 하려면 성능 모니터 사용자 그룹에 자신을 추가합니다.
Windows Vista 이상에서 UAC(사용자 계정 컨트롤)는 사용자의 권한을 결정합니다. 기본 제공 관리자 그룹의 구성원인 경우 표준 사용자 액세스 토큰과 관리자 액세스 토큰이라는 두 개의 런타임 액세스 토큰이 할당됩니다. 기본적으로 표준 사용자 역할에 있습니다. 성능 카운터에 액세스하는 코드를 실행하려면 먼저 표준 사용자에서 관리자로 권한을 상승시켜야 합니다. 애플리케이션 아이콘을 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행하려는 경우 애플리케이션을 시작할 때 이 작업을 수행할 수 있습니다.