다음을 통해 공유


방법: 성능 통계 생성

업데이트: 2007년 11월

.NET Compact Framework에는 응용 프로그램의 성능에 대한 통계 보고서를 만들 수 있는 성능 카운터가 포함되어 있습니다. 카운터는 개체 할당, 가비지 수집, 컬렉션 및 기타 기능과 프로세스를 측정합니다. 레지스트리 설정을 설정하거나 해제하여 응용 프로그램에 대한 보고서를 생성할 수 있습니다.

성능 카운터에 대한 내용은 .NET Compact Framework의 성능 카운터를 참조하십시오.

성능 통계를 생성하려면

  1. 다음 레지스트리 하위 키 값을 1로 설정합니다.

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework\PerfMonitor

    레지스트리 값 설정 예제는 이 절차 뒤에 나오는 코드를 참조하십시오.

  2. 성능을 분석할 응용 프로그램을 실행합니다. 다른 .NET Compact Framework 응용 프로그램을 동시에 실행하면 안 됩니다.

  3. 장치의 루트에 있는 생성된 통계 파일을 분석합니다. 이 파일은 현재 실행 중인 .NET Compact Framework 응용 프로그램과 이름이 같으며 확장명은 .stat입니다.

    데이터를 텍스트 편집기로 가져오거나 Microsoft Excel의 텍스트 마법사 대화 상자에서 너비가 일정함을 선택하여 Excel로 가져올 수 있습니다.

  4. 레지스트리 하위 키 값을 0으로 설정하여 성능 카운터를 해제합니다.

예제

다음 메서드는 부울 매개 변수인 perfOn의 값에 따라 레지스트리 하위 키를 설정하여 성능 카운터를 설정하거나 해제합니다.

' Call this method with True to 
' turn on the peformance counters, 
' or with False to turn them off.
Private Sub SetPerfCounters(perfOn As Boolean)

    ' Specify values for setting the registry.
    Dim userRoot As String = "HKEY_LOCAL_MACHINE"
    Dim subKey As String = "SOFTWARE\\Microsoft\\.NETCompactFramework\\PerfMonitor"
    Dim keyName As String = userRoot & "\" & subKey

    Dim PCset As Integer

    If perfOn = True Then
        PCset = 1
    Else
        PCset = 0
    End If

    ' Set the registry value.       
    Try
        Registry.SetValue(keyName, "Counters", PCset)
        If perfOn = True Then
            MessageBox.Show("Performance Counters On")
        Else
            MessageBox.Show("Performance Counters Off")
        End If
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub
// Call this method with True to 
// turn on the peformance counters, 
// or with False to turn them off.
private void SetPerfCounters(bool perfOn)
{
    // Specify values for setting the registry.
    string userRoot = "HKEY_LOCAL_MACHINE";
    string subkey = "SOFTWARE\\Microsoft\\.NETCompactFramework\\PerfMonitor";
    string keyName = userRoot + "\\" + subkey;

    int PCset;
    if(perfOn == true)
        PCset = 1;
    else
        PCset = 0;

    // Set the the registry value.
    try
    {
        Registry.SetValue(keyName, "Counters", PCset);
        if(perfOn == true)
            MessageBox.Show("Performance Counters On");
        else
            MessageBox.Show("Performance Counters Off");
    }
    catch(System.Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

코드 컴파일

이 예제에는 다음과 같은 네임스페이스에 대한 참조가 필요합니다.

참고 항목

개념

.NET Compact Framework의 성능 카운터