Share via


ICorProfilerInfo2 Interface

Provides methods that code profilers use to communicate with the common language runtime (CLR) to control event monitoring and request information. The ICorProfilerInfo2 interface is an extension of the ICorProfilerInfo interface. That is, it provides new methods supported in the .NET Framework version 2.0 and later versions.

Methods

Method

Description

ICorProfilerInfo2::DoStackSnapshot Method

Walks the stack of the specified thread to report managed call frames to the profiler.

ICorProfilerInfo2::EnumModuleFrozenObjects Method

Gets an enumerator that allows iteration over the frozen objects in the specified module.

ICorProfilerInfo2::GetAppDomainStaticAddress Method

Gets the address of the specified application domain-static field that is in the scope of the specified application domain.

ICorProfilerInfo2::GetArrayObjectInfo Method

Gets detailed information about an array object.

ICorProfilerInfo2::GetBoxClassLayout Method

Gets information about the class layout for a specified value type that is boxed.

ICorProfilerInfo2::GetClassFromTokenAndTypeArgs Method

Gets the ClassID of a type by using the specified metadata token and the ClassID values of any type arguments.

ICorProfilerInfo2::GetClassIDInfo2 Method

Gets the parent module of the specified generic class, the metadata token for the class, the ClassID of its parent class, and the ClassID for each type argument, if present, of the class.

ICorProfilerInfo2::GetClassLayout Method

Gets information about the layout, in memory, of the fields defined by the specified class. That is, this method gets the offsets of the class's fields.

ICorProfilerInfo2::GetCodeInfo2 Method

Gets the extents of native code associated with the specified FunctionID.

ICorProfilerInfo2::GetContextStaticAddress Method

Gets the address of the specified context-static field that is in the scope of the specified context.

ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs Method

Gets the FunctionID of a function by using the specified metadata token, containing class, and ClassID values of any type arguments.

ICorProfilerInfo2::GetFunctionInfo2 Method

Gets the parent class, the metadata token, and the ClassID of each type argument, if present, of a function.

ICorProfilerInfo2::GetGenerationBounds Method

Gets the memory regions (the segments of the heap) that make up the generations of the garbage-collected heap.

ICorProfilerInfo2::GetNotifiedExceptionClauseInfo Method

Gets the native address and frame information for the exception clause (catch/finally/filter) that is about to be run or has just been run.

ICorProfilerInfo2::GetObjectGeneration Method

Gets the segment of the heap that contains the specified object.

ICorProfilerInfo2::GetRVAStaticAddress Method

Gets the address of the specified relative virtual address (RVA)-static field.

ICorProfilerInfo2::GetStaticFieldInfo Method

Gets the scope in which the specified field is static.

ICorProfilerInfo2::GetStringLayout Method

Gets information about the layout of a string object.

ICorProfilerInfo2::GetThreadAppDomain Method

Gets the ID of the application domain in which the specified thread is currently executing code.

ICorProfilerInfo2::GetThreadStaticAddress Method

Gets the address of the specified thread-static field that is in the scope of the specified thread.

ICorProfilerInfo2::SetEnterLeaveFunctionHooks2 Method

Specifies profiler-implemented functions to be called on "enter", "leave", and "tailcall" hooks of managed functions.

Remarks

A profiler calls a method in the ICorProfilerInfo2 interface to communicate with the CLR to control event monitoring and request information.

The methods of the ICorProfilerInfo2 interface are implemented by the CLR using the free-threaded model. Each method returns an HRESULT to indicate success or failure. For a list of possible return codes, see the CorError.h file.

The CLR passes an ICorProfilerInfo2 interface to each code profiler during initialization, using the profiler's implementation of ICorProfilerCallback::Initialize. A code profiler can then call methods of the ICorProfilerInfo2 interface to get information about managed code being executed under the control of the CLR.

Requirements

Platforms: See .NET Framework System Requirements.

Header: CorProf.idl, CorProf.h

Library: CorGuids.lib

.NET Framework Versions: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

See Also

Reference

ICorProfilerInfo Interface

Other Resources

Profiling Interfaces