Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Definisce un buffer di trasporto per le informazioni sui blocchi di sincronizzazione.
Note
Questa API è stata originariamente progettata per l'uso interno nel runtime. Sebbene sia ora supportato per l'uso di terze parti, è consigliabile usare ICorDebug le API e ICorProfiler quando possibile.
Sintassi
struct DacpSyncBlockData : ZeroInit<DacpSyncBlockData>
{
CLRDATA_ADDRESS Object;
BOOL bFree; // if set, no other fields are useful
// fields below provide data from this, so it's just for display
CLRDATA_ADDRESS SyncBlockPointer;
DWORD COMFlags;
UINT MonitorHeld;
UINT Recursion;
CLRDATA_ADDRESS HoldingThread;
UINT AdditionalThreadCount;
CLRDATA_ADDRESS appDomainPtr;
// SyncBlockCount will always be filled in with the number of SyncBlocks.
// SyncBlocks may be requested from [1,SyncBlockCount]
UINT SyncBlockCount;
// SyncBlockNumber must be from [1,SyncBlockCount]
// If there are no SyncBlocks, a call to Request with SyncBlockCount = 1
// will return E_FAIL.
HRESULT Request(ISOSDacInterface *sos, UINT SyncBlockNumber)
{
return sos->GetSyncBlockData(SyncBlockNumber, this);
}
};
Members
| Membro | Descrizione |
|---|---|
Object |
Indirizzo dell'oggetto associato al blocco di sincronizzazione. |
bFree |
Valore che indica se il blocco di sincronizzazione è gratuito. Se questo membro è impostato, non sono utili altri campi. |
SyncBlockPointer |
Indirizzo del blocco di sincronizzazione. |
COMFlags |
Flag che descrivono i dati di interoperabilità COM associati al blocco di sincronizzazione. |
MonitorHeld |
Numero di volte in cui viene mantenuto il monitoraggio. |
Recursion |
Conteggio ricorsione del monitoraggio. |
HoldingThread |
Indirizzo del thread che contiene il monitoraggio. |
AdditionalThreadCount |
Numero di thread aggiuntivi associati al blocco di sincronizzazione. |
appDomainPtr |
Indirizzo del dominio applicazione associato al blocco di sincronizzazione. |
SyncBlockCount |
Numero di blocchi di sincronizzazione. I blocchi di sincronizzazione possono essere richiesti da 1 a questo valore. |
Request |
Popola la struttura chiamando ISOSDacInterface::GetSyncBlockData. |
Remarks
Questa struttura si trova all'interno del runtime e non viene esposta tramite intestazioni o file di libreria. Per usarla, definire la struttura come specificato in precedenza.
Requisiti
Piattaforme: Vedere Requisiti di sistema.
Intestazione: Nessuno
Biblioteca: Nessuno
versioni di .NET Framework: disponibile dalla versione 4.7