Enumerasi COR_PRF_SUSPEND_REASON
Menunjukkan alasan runtime ditangguhkan.
Sintaks
typedef enum {
COR_PRF_SUSPEND_OTHER = 0x00,
COR_PRF_SUSPEND_FOR_GC = 0x01,
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN = 0x02,
COR_PRF_SUSPEND_FOR_CODE_PITCHING = 0x03,
COR_PRF_SUSPEND_FOR_SHUTDOWN = 0x04,
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER = 0x06,
COR_PRF_SUSPEND_FOR_GC_PREP = 0x07, COR_PRF_SUSPEND_FOR_REJIT = 8
} COR_PRF_SUSPEND_REASON;
Anggota
Anggota | Deskripsi |
---|---|
COR_PRF_SUSPEND_OTHER |
Runtime ditangguhkan karena alasan yang tidak ditentukan. |
COR_PRF_SUSPEND_FOR_GC |
Runtime ditangguhkan untuk melayani permintaan pengumpulan sampah. Panggilan balik terkait pengumpulan sampah terjadi antara panggilan balik ICorProfilerCallback::RuntimeSuspendFinished dan ICorProfilerCallback::RuntimeResumeStarted. |
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN |
Runtime ditangguhkan sehingga AppDomain dapat dimatikan.Saat runtime ditangguhkan, runtime akan menentukan utas dalam AppDomain mana yang sedang dimatikan dan mengaturnya untuk dibatalkan saat dilanjutkan. Tidak ada panggilan balik khusus AppDomain selama penangguhan ini. |
COR_PRF_SUSPEND_FOR_CODE_PITCHING |
Runtime ditangguhkan sehingga pitching kode dapat terjadi. Pitching kode terjadi hanya ketika pengompilasi just-in-time (JIT) aktif dengan pitching kode diaktifkan. Panggilan balik pitching kode terjadi antara panggilan balik ICorProfilerCallback::RuntimeSuspendFinished dan ICorProfilerCallback::RuntimeResumeStarted . Catatan: CLR JIT tidak melempar fungsi dalam .NET Framework versi 2.0, sehingga nilai ini tidak digunakan dalam 2.0. |
COR_PRF_SUSPEND_FOR_SHUTDOWN |
Runtime ditangguhkan sehingga dapat dimatikan. Ia harus menangguhkan semua utas untuk menyelesaikan operasi. |
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER |
Runtime ditangguhkan untuk penelusuran kesalahan dalam proses. |
COR_PRF_SUSPEND_FOR_GC_PREP |
Runtime ditangguhkan untuk mempersiapkan pengumpulan sampah. |
COR_PRF_SUSPEND_FOR_REJIT |
Runtime ditangguhkan untuk rekompilasi JIT. |
Keterangan
Semua utas runtime yang berada dalam kode tak terkelola diizinkan untuk terus berjalan sampai mereka mencoba memasukkan kembali runtime, di titik tempat mereka juga akan ditangguhkan sampai runtime dilanjutkan. Ini juga berlaku untuk utas baru yang memasuki runtime. Semua utas dalam runtime segera ditangguhkan jika berada dalam kode yang dapat diinterupsi, atau diminta untuk menangguhkan ketika mereka mencapai kode yang dapat diinterupsi.
Persyaratan
Platform: Lihat Persyaratan Sistem.
Header: CorProf.idl, CorProf.h
Pustaka: CorGuids.lib
Versi .NET Framework: Tersedia mulai dari versi 1.0