DacpThreadData (estructura)

Define un búfer de transporte para la información del subproceso en tiempo de ejecución.

Nota:

Esta API se diseñó originalmente para su uso interno en tiempo de ejecución. Aunque ahora es compatible con el uso de terceros, se recomienda trabajar con las API ICorDebug y ICorProfiler siempre que sea posible.

Syntax

struct DacpThreadData : ZeroInit<DacpThreadData>
{
    DWORD corThreadId;
    DWORD osThreadId;
    int state;
    ULONG preemptiveGCDisabled;
    CLRDATA_ADDRESS allocContextPtr;
    CLRDATA_ADDRESS allocContextLimit;
    CLRDATA_ADDRESS context;
    CLRDATA_ADDRESS domain;
    CLRDATA_ADDRESS pFrame;
    DWORD lockCount;
    CLRDATA_ADDRESS firstNestedException; // Pass this pointer to DacpNestedExceptionInfo
    CLRDATA_ADDRESS teb;
    CLRDATA_ADDRESS fiberData;
    CLRDATA_ADDRESS lastThrownObjectHandle;
    CLRDATA_ADDRESS nextThread;

    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
    {
        return sos->GetThreadData(addr, this);
    }
};

Members

Miembro Descripción
corThreadId Identificador de subproceso administrado.
osThreadId Identificador del subproceso del sistema operativo.
state Marcas de estado del subproceso.
preemptiveGCDisabled Valor que indica si la recolección de elementos no utilizados preferentes está deshabilitada para el subproceso.
allocContextPtr Puntero de contexto de asignación actual para el subproceso.
allocContextLimit Límite de contexto de asignación para el subproceso.
context Dirección del contexto del subproceso.
domain Dirección del dominio de aplicación del subproceso.
pFrame Dirección del marco actual.
lockCount Número de bloqueos mantenidos por el subproceso.
firstNestedException Dirección de la primera excepción anidada. Pase este puntero a DacpNestedExceptionInfo.
teb Dirección del bloque de entorno del subproceso.
fiberData Dirección de los datos de fibra.
lastThrownObjectHandle Identificador del último objeto producido en el subproceso.
nextThread Dirección del siguiente subproceso de la lista de subprocesos en tiempo de ejecución.
Request Rellena la estructura llamando a ISOSDacInterface::GetThreadData.

Remarks

Esta estructura reside dentro del tiempo de ejecución y no se expone a través de ningún encabezado o archivo de biblioteca. Para usarlo, defina la estructura como se especificó anteriormente.

Requisitos

Plataformas: Consulte Requisitos del sistema.
Encabezado: Ninguno
Biblioteca: Ninguno
versiones de .NET Framework: disponibles desde la versión 4.7

Consulte también