Struktur DacpSyncBlockData

Menentukan buffer transportasi untuk informasi blok sinkronisasi.

Note

API ini awalnya dirancang untuk penggunaan internal dalam runtime. Meskipun sekarang didukung untuk penggunaan pihak ketiga, sebaiknya menggunakan API ICorDebug dan ICorProfiler jika memungkinkan.

Syntax

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

Anggota Deskripsi
Object Alamat objek yang terkait dengan blok sinkronisasi.
bFree Nilai yang menunjukkan apakah blok sinkronisasi gratis. Jika anggota ini diatur, tidak ada bidang lain yang berguna.
SyncBlockPointer Alamat blok sinkronisasi.
COMFlags Bendera yang menjelaskan data interop COM yang terkait dengan blok sinkronisasi.
MonitorHeld Berapa kali monitor ditahan.
Recursion Jumlah rekursi monitor.
HoldingThread Alamat utas yang memegang monitor.
AdditionalThreadCount Jumlah utas tambahan yang terkait dengan blok sinkronisasi.
appDomainPtr Alamat domain aplikasi yang terkait dengan blok sinkronisasi.
SyncBlockCount Jumlah blok sinkronisasi. Blok sinkronisasi dapat diminta dari 1 hingga nilai ini.
Request Mengisi struktur dengan memanggil ISOSDacInterface::GetSyncBlockData.

Remarks

Struktur ini berada di dalam runtime dan tidak diekspos melalui header atau file pustaka apa pun. Untuk menggunakannya, tentukan struktur seperti yang ditentukan di atas.

Persyaratan

Platform: Lihat Persyaratan Sistem.
Header: Tidak
Perpustakaan: Tidak
.NET Framework Versions: Tersedia sejak 4.7

Baca juga