Aracılığıyla paylaş


StopProfile

StopProfile İşlevi, belirtilen profil oluşturma düzeyi için 0 (kapalı) sayaç ayarlar.

PROFILE_COMMAND_STATUS PROFILERAPI StopProfile(
                       PROFILE_CONTROL_LEVEL Level, 
                       unsigned int dwId);

Parametreler

Level

Hangi performans veri toplama uygulanabilir profil düzeyini gösterir.Aşağıdaki PROFILE_CONTROL_LEVEL numaralandırıcıları hangi performans veri toplama uygulanabilir üç düzeylerinden birini belirtmek için kullanılabilir:

Numaralandırıcı

Description

PROFILE_GLOBALLEVEL

Genel düzeyi ayarı, tüm işlemler ve iş parçacıklarını çalıştırmak profil oluşturma, etkiler.

PROFILE_PROCESSLEVEL

İşlem düzeyi ayarı, belirtilen işlem parçası olan tüm iş parçacıklarını etkiler.

PROFILE_THREADLEVEL

Düzeyi ayarı profil oluşturma iş parçacığı belirtilen iş parçacığı etkiler.

dwId

Sistem tarafından oluşturulan işlem veya iş parçacığı tanımlayıcısı.

Özellik Değeri ve Dönüş Değeri

İşlev kullanarak başarı veya başarısızlık belirtir PROFILE_COMMAND_STATUS numaralandırma.Dönüş değeri aşağıdakilerden biri olabilir:

Numaralandırıcı

Description

PROFILE_ERROR_ID_NOEXIST

Profil oluşturma öğe kimliği yok.

PROFILE_ERROR_LEVEL_NOEXIST

Düzey belirtilen profil yok.

PROFILE_ERROR_MODE_NEVER

Hiçbir zaman işlevi çağrıldığında profil oluşturma modunu ayarlamak.

PROFILE_ERROR_NOT_YET_IMPLEMENTED

Profil oluşturma işlevi çağrısı, profil oluşturma düzeyinde veya çağrı ve düzeyi henüz uygulanmadı.

PROFILE_OK

Çağrı başarılı oldu.

Notlar

StartProfile ve StopProfile profil oluşturma düzeyi için Başlat/Durdur durumunu kontrol eder.Başlat/Durdur varsayılan değeri 1'dir.Başlangıç değeri kayıt defterinde değiştirilebilir.StartProfile her çağrı Başlat/Durdur 1 olarak ayarlar; her arama StopProfile için 0 olarak ayarlanır.

Başlat/Durdur 0'dan büyük olduğunda Başlat/Durdur il düzeyi için açık'tır.Sıfıra eşit veya daha az olduğunda Başlat/Durdur durumu Kapalı'dır.

Başlat/Durdur durumu ve askıya alma/devam et durumuna her ikisi de etkin durumdayken, düzeyi için profil oluşturma durumu açık'tır.Bir iş parçacığı olması, global, proses ve profili iş parçacığı için iş parçacığı düzeyi durumları açık olması gerekir.

.NET Framework Eşdeğeri

Microsoft.VisualStudio.Profiler.dll

İşlev bilgileri

Başlık: VSPerf.h içinde bildirilen

Alma kitaplığı: VSPerf.lib

Örnek

Aşağıdaki örnekte, StopProfile yöntemi gösterilmektedir.StartProfile yöntemine yapılan bir çağrı aynı iş parçacığı veya işlem tarafından tanımlanan yapılan örnek varsayar PROFILE_CURRENTID.

void ExerciseStopProfile()
{
    // StartProfile and StopProfile control the 
    // Start/Stop state for the profiling level. 
    // The default initial value of Start/Stop is 1. 
    // The initial value can be changed in the registry. 
    // Each call to StartProfile sets Start/Stop to 1; 
    // each call to StopProfile sets it to 0. 

    // Variables used to print output.
    HRESULT hResult;
    TCHAR tchBuffer[256];

    // Declare enumeration to hold result of call
    // to StopProfile.
    PROFILE_COMMAND_STATUS profileResult;

    profileResult = StopProfile(
        PROFILE_THREADLEVEL,
        PROFILE_CURRENTID);

    // Format and print result.
    LPCTSTR pszFormat = TEXT("%s %d.\0");
    TCHAR* pszTxt = TEXT("StopProfile returned");
    hResult = StringCchPrintf(tchBuffer, 256, pszFormat, 
        pszTxt, profileResult);

#ifdef DEBUG
    OutputDebugString(tchBuffer);
#endif
}

Ayrıca bkz.

Diğer Kaynaklar

Visual Studio Profiler API Başvurusu (yerel)