DacpMethodDescData Structure
Defines a transport buffer for a method's runtime information.
Note
This API was originally designed for internal use in the runtime. Although it is now supported for 3rd party use, we recommend working with ICorDebug
and ICorProfiler
APIs when possible.
Syntax
struct DacpMethodDescData
{
int bHasNativeCode;
int bIsDynamic;
unsigned short wSlotNumber;
CLRDATA_ADDRESS NativeCodeAddr;
CLRDATA_ADDRESS data;
CLRDATA_ADDRESS MethodDescPtr;
CLRDATA_ADDRESS nativeCodeInfo;
CLRDATA_ADDRESS moduleInfo;
mdToken MDToken;
CLRDATA_ADDRESS payloadGC;
CLRDATA_ADDRESS payloadGC2;
CLRDATA_ADDRESS managedDynamicMethodObject;
CLRDATA_ADDRESS requestedIP;
DacpReJitData rejitDataCurrent;
DacpReJitData rejitDataRequested;
unsigned long cJittedRejitVersions;
};
Members
Member | Description |
---|---|
bHasNativeCode |
Indicates if the runtime has native code available for the given instantiation of the method. |
bIsDynamic |
Indicates if the method is generated dynamically through lightweight code generation. |
wSlotNumber |
The method's slot number in the method table. |
NativeCodeAddr |
The method's initial native address. |
data |
Pointer to a buffer used internally by the runtime. |
MethodDescPtr |
Pointer to the MethodDesc in the runtime. |
nativeCodeInfo |
Pointer to a buffer used internally by the runtime to track methods. |
moduleInfo |
Pointer to a buffer used internally by the runtime for module information. |
MDToken |
Token associated with the given method. |
payloadGC |
Pointer to a garbage collection buffer used internally by the runtime. |
payloadGC2 |
Pointer to a garbage collection buffer used internally by the runtime. |
managedDynamicMethodObject |
If the method is dynamic, the runtime uses this buffer internally for information tracking. |
requestedIP |
Used to populate the structure per request when given a native code address. |
rejitDataCurrent |
Information about the latest instrumented version of the method. |
rejitDataRequested |
Rejit information for the requested native address. |
cJittedRejitVersions |
Number of times the method has been rejitted through instrumentation. |
Remarks
This structure lives inside the runtime and is not exposed through any headers or library files. To use it, define the structure as specified above.
Requirements
Platforms: See System Requirements.
Header: None
Library: None
.NET Framework Versions: Available since 4.7
See also
Tee yhteistyötä kanssamme GitHubissa
Tämän sisällön lähde on GitHubissa, jossa voit myös luoda ja tarkastella ongelmia ja pull-pyyntöjä. Katso lisätietoja osallistujan oppaasta.