共用方式為


SuspendProfile

更新:2007 年 11 月

SuspendProfile 方法會遞增指定之分析層級的暫停/繼續計數器。

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

參數

Level

表示可套用效能資料集合的設定檔層級。下列 PROFILE_CONTROL_LEVEL 列舉值可用來表示可套用效能資料集合之三個層級中的一個層級:

列舉值

描述

PROFILE_GLOBALLEVEL

全域層級設定會影響程式碼剖析回合中的所有處理序和執行緒。

PROFILE_PROCESSLEVEL

處理序層級設定會影響屬於指定之處理序的一部分的所有執行緒。

PROFILE_THREADLEVEL

執行緒分析層級設定會影響指定的執行緒。

dwId

由系統產生的處理序或執行緒識別項。

屬性值/傳回值

此函式會使用 PROFILE_COMMAND_STATUS 列舉型別來表示成功或失敗。傳回值可以是下列其中之一:

列舉值

描述

PROFILE_ERROR_ID_NOEXIST

分析項目 ID 不存在。

PROFILE_ERROR_LEVEL_NOEXIST

所指定的分析層級不存在。

PROFILE_ERROR_MODE_NEVER

當呼叫函式時,分析模式是設定為 NEVER。

PROFILE_ERROR_NOT_YET_IMPLEMENTED

尚未實作分析函式呼叫、分析層級,或呼叫與層級的組合。

PROFILE_OK

呼叫成功。

備註

暫停/繼續計數器的初始值為 0。每個對 SuspendProfile 的呼叫會為暫停/繼續計數器增加 1;而每個對 ResumeProfile 的呼叫則會減去 1。

當暫停/繼續計數大於 0 時,該層級的暫停/繼續狀態會為 OFF。當計數小於或等於 0 時,暫停/繼續狀態會為 ON。

當 Start/Stop 狀態和 Suspend/Resume 狀態兩者都為 ON 時,此層級的分析狀態就會是 ON。對於要分析的執行緒,該執行緒的全域、處理序和執行緒層級狀態都必須為 ON。

.NET Framework 對等用法

Microsoft.VisualStudio.Profiler.dll

功能資訊

標頭:在 VSPerf.h 中宣告

匯入程式庫:VSPerf.lib

範例

下列範例將說明 SuspendProfile 方法。此範例假設先前已針對由 PROFILE_CURRENTID 所識別的處理序或執行緒呼叫 StartProfile。

void ExerciseSuspendProfile()
{
    // The initial value of the Suspend/Resume counter is 0.
    // Each call to SuspendProfile adds 1 to the
    // Suspend/Resume count; each call
    // to ResumeProfile subtracts 1.
            
    // Variables used to print output
    HRESULT hResult;
    TCHAR tchBuffer[256];

    // Declare enumeration to hold result of call
    // to SuspendProfile
    PROFILE_COMMAND_STATUS profileResult;

    profileResult = SuspendProfile(
        PROFILE_GLOBALLEVEL,
        PROFILE_CURRENTID);

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

#ifdef DEBUG
    OutputDebugString(tchBuffer);
#endif
}

請參閱

其他資源

Visual Studio 分析工具 API 參考 (原生)