Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The SuspendProfile method increments the Suspend/Resume counter for the specified profiling level.
Namespace: Microsoft.VisualStudio.Profiler
Assembly: Microsoft.VisualStudio.Profiler (in Microsoft.VisualStudio.Profiler.dll)
Syntax
'Declaration
Public Shared Function SuspendProfile ( _
profileLevel As ProfileLevel, _
elementId As UInteger _
) As ProfileOperationResult
public static ProfileOperationResult SuspendProfile(
ProfileLevel profileLevel,
uint elementId
)
public:
static ProfileOperationResult SuspendProfile(
ProfileLevel profileLevel,
unsigned int elementId
)
static member SuspendProfile :
profileLevel:ProfileLevel *
elementId:uint32 -> ProfileOperationResult
public static function SuspendProfile(
profileLevel : ProfileLevel,
elementId : uint
) : ProfileOperationResult
Parameters
profileLevel
Type: Microsoft.VisualStudio.Profiler.ProfileLevelIdentifies the execution level of the identifier specified in elementId.
elementId
Type: System.UInt32The process or thread identifier generated by the system.
Return Value
Type: Microsoft.VisualStudio.Profiler.ProfileOperationResult
The return value, ProfileOperationResult, is an enum.
Remarks
SuspendProfile and ResumeProfile control the Suspend/Resume counter for the profiling level. The Suspend/Resume counter is typically used to override the standard profiler API data control functions.
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.
When the Suspend/Resume count is greater than 0, the Suspend/Resume state for the level is OFF. When the count is less than or equal to 0, the Suspend/Resume state is ON.
When the Start/Stop state and the Suspend/Resume state are both ON, the profiling state for the level is ON. For a thread to be profiled, the global, process, and thread level states for the thread must all be ON.
Examples
The following example illustrates the SuspendProfile method. This example assumes that a prior call to StartProfile has been made for the process or thread identified by the property DataCollection.CurrentId.
public 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.
// Declare enumeration to hold result of call
// to SuspendProfile
ProfileOperationResult profileResult;
profileResult = DataCollection.SuspendProfile(
ProfileLevel.Global,
DataCollection.CurrentId);
Console.WriteLine("SuspendProfile returned {0}", profileResult);
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.