Bagikan melalui


Antarmuka ICorProfilerCallback

Menyediakan metode yang digunakan oleh runtime bahasa umum (CLR) untuk memberi tahu profiler kode ketika peristiwa tempat profiler berlangganan terjadi.

Methods

Metode Description
Metode AppDomainCreationFinished Memberi tahu profiler bahwa domain aplikasi telah dibuat.
Metode AppDomainCreationStarted Memberi tahu profiler bahwa domain aplikasi sedang dibuat.
Metode AppDomainShutdownFinished Memberi tahu profiler bahwa domain aplikasi telah dibongkar dari proses.
Metode AppDomainShutdownStarted Memberi tahu profiler bahwa domain aplikasi sedang dibongkar dari proses.
Metode AssemblyLoadFinished Memberi tahu profiler bahwa assembly telah selesai dimuat.
Metode AssemblyLoadStarted Memberi tahu profiler bahwa rakitan sedang dimuat.
Metode AssemblyUnloadFinished Memberi tahu profiler bahwa rakitan telah dibongkar.
Metode AssemblyUnloadStarted Memberi tahu profiler bahwa rakitan sedang dibongkar.
Metode ClassLoadFinished Memberi tahu profiler bahwa kelas telah selesai dimuat.
Metode ClassLoadStarted Memberi tahu profiler bahwa kelas sedang dimuat.
Metode ClassUnloadFinished Memberi tahu profiler bahwa kelas telah selesai dibongkar.
Metode ClassUnloadStarted Memberi tahu profiler bahwa kelas sedang dibongkar.
Metode COMClassicVTableCreated Memberi tahu profiler bahwa pembungkus yang dapat dipanggil runtime (RCW) untuk IID dan kelas yang ditentukan telah dibuat.
Metode COMClassicVTableDestroyed Memberi tahu profiler bahwa RCW sedang dihancurkan.
Metode ExceptionCatcherEnter Memberi tahu profiler bahwa kontrol sedang diteruskan ke blok yang sesuai catch .
Metode ExceptionCatcherLeave Memberi tahu profiler bahwa kontrol sedang diteruskan dari blok yang sesuai catch .
Metode ExceptionCLRCatcherExecute Usang dalam .NET Framework versi 2.0.
Metode ExceptionCLRCatcherFound Usang dalam .NET Framework 2.0.
Metode ExceptionOSHandlerEnter Tidak diterapkan. Profiler yang membutuhkan informasi pengecualian yang tidak dikelola harus mendapatkan informasi ini melalui cara lain.
Metode ExceptionOSHandlerLeave Tidak diterapkan. Profiler yang membutuhkan informasi pengecualian yang tidak dikelola harus mendapatkan informasi ini melalui cara lain.
Metode ExceptionSearchCatcherFound Memberi tahu profiler bahwa fase pencarian penanganan pengecualian telah menemukan handler untuk pengecualian yang dilemparkan.
Metode ExceptionSearchFilterEnter Memberi tahu profiler bahwa filter pengguna sedang dijalankan.
Metode ExceptionSearchFilterLeave Memberi tahu profiler bahwa filter pengguna baru saja selesai dieksekusi.
Metode ExceptionSearchFunctionEnter Memberi tahu profiler bahwa fase pencarian penanganan pengecualian telah memasuki fungsi.
Metode ExceptionSearchFunctionLeave Memberi tahu profiler bahwa fase pencarian penanganan pengecualian telah selesai mencari fungsi.
Metode ExceptionThrown Memberi tahu profiler bahwa pengecualian telah dilemparkan.
Metode ExceptionUnwindFinallyEnter Memberi tahu profiler bahwa fase unwind penanganan pengecualian memasukkan klausa yang finally terkandung dalam fungsi yang ditentukan.
Metode ExceptionUnwindFinallyLeave Memberi tahu profiler bahwa fase unwind penanganan pengecualian telah meninggalkan finally klausul.
Metode ExceptionUnwindFunctionEnter Memberi tahu profiler bahwa fase unwind penanganan pengecualian telah memasuki fungsi.
Metode ExceptionUnwindFunctionLeave Memberi tahu profiler bahwa fase unwind penanganan pengecualian telah selesai melepas kelelahan fungsi.
Metode FunctionUnloadStarted Memberi tahu profiler bahwa runtime telah mulai membongkar fungsi.
Menginisialisasi Metode Dipanggil untuk menginisialisasi profiler setiap kali aplikasi CLR baru dimulai.
Metode JITCachedFunctionSearchFinished Memberi tahu profiler bahwa pencarian telah selesai untuk fungsi yang dikompilasi sebelumnya menggunakan NGen.exe.
Metode JITCachedFunctionSearchStarted Memberi tahu profiler bahwa pencarian telah dimulai untuk fungsi yang dikompilasi sebelumnya menggunakan NGen.exe.
Metode JITCompilationFinished Memberi tahu profiler bahwa pengkompilasi JIT telah selesai mengkompilasi fungsi.
Metode JITCompilationStarted Memberi tahu profiler bahwa pengkompilasi just-in-time (JIT) telah mulai mengkompilasi fungsi.
Metode JITFunctionPitched Memberi tahu profiler bahwa fungsi yang telah dikompilasi JIT telah dihapus dari memori.
Metode JITInlining Memberi tahu profiler bahwa pengkompilasi JIT akan menyisipkan fungsi sejalan dengan fungsi lain.
Metode ManagedToUnmanagedTransition Memberi tahu profiler bahwa transisi dari kode terkelola ke kode yang tidak dikelola telah terjadi.
Metode ModuleAttachedToAssembly Memberi tahu profiler bahwa modul sedang dilampirkan ke assembly induknya.
Metode ModuleLoadFinished Memberi tahu profiler bahwa modul telah selesai dimuat.
Metode ModuleLoadStarted Memberi tahu profiler bahwa modul sedang dimuat.
Metode ModuleUnloadFinished Memberi tahu profiler bahwa modul telah selesai dibongkar.
Metode ModuleUnloadStarted Memberi tahu profiler bahwa modul sedang dibongkar.
Metode MovedReferences Memberi tahu profiler tentang referensi objek yang dipindahkan selama pengumpulan sampah.
Metode ObjectAllocated Memberi tahu profiler bahwa memori dalam timbunan telah dialokasikan untuk objek.
Metode ObjectReferences Memberi tahu profiler tentang objek dalam memori yang dirujuk oleh objek yang ditentukan.
Metode ObjectsAllocatedByClass Memberi tahu profiler tentang jumlah instans dari setiap kelas tertentu yang telah dibuat sejak pengumpulan sampah sebelumnya.
Metode RemotingClientInvocationFinished Memberi tahu profiler bahwa panggilan jarak jauh telah berjalan hingga selesai pada klien.
Metode RemotingClientInvocationStarted Memberi tahu profiler bahwa panggilan jarak jauh telah dimulai.
Metode RemotingClientReceivingReply Memberi tahu profiler bahwa bagian sisi server dari panggilan jarak jauh telah selesai dan klien sekarang menerima dan akan memproses balasan.
Metode RemotingClientSendingMessage Memberi tahu profiler bahwa klien mengirim permintaan ke server.
Metode RemotingServerInvocationReturned Memberi tahu profiler bahwa proses telah selesai memanggil metode sebagai respons terhadap permintaan pemanggilan metode jarak jauh.
Metode RemotingServerInvocationStarted Memberi tahu profiler bahwa proses memanggil metode sebagai respons terhadap permintaan pemanggilan metode jarak jauh.
Metode RemotingServerReceivingMessage Memberi tahu profiler bahwa proses menerima permintaan pemanggilan atau aktivasi metode jarak jauh.
Metode RemotingServerSendingReply Memberi tahu profiler bahwa proses telah selesai memproses permintaan pemanggilan metode jarak jauh dan akan mengirimkan balasan melalui saluran.
Metode RootReferences Memberi tahu profiler dengan informasi tentang referensi akar setelah pengumpulan sampah.
Metode RuntimeResumeFinished Memberi tahu profiler bahwa runtime telah melanjutkan semua utas runtime dan telah kembali ke operasi normal.
Metode RuntimeResumeStarted Memberi tahu profiler bahwa runtime memulai semua utas runtime.
Metode RuntimeSuspendAborted Memberi tahu profiler bahwa runtime telah membatalkan penangguhan runtime yang terjadi.
Metode RuntimeSuspendFinished Memberi tahu profiler bahwa runtime telah menyelesaikan penangguhan semua utas runtime.
Metode RuntimeSuspendStarted Memberi tahu profiler bahwa runtime akan menangguhkan semua utas runtime.
Metode RuntimeThreadResumed Memberi tahu profiler bahwa utas yang ditentukan telah dilanjutkan setelah ditangguhkan.
Metode RuntimeThreadSuspended Memberi tahu profiler bahwa utas yang ditentukan telah, atau akan ditangguhkan.
Metode Matikan Memberi tahu profiler bahwa aplikasi dimatikan.
Metode ThreadAssignedToOSThread Memberi tahu profiler bahwa utas terkelola sedang diimplementasikan menggunakan utas sistem operasi (OS) tertentu.
Metode ThreadCreated Memberi tahu profiler bahwa utas telah dibuat.
Metode ThreadDestroyed Memberi tahu profiler bahwa utas telah dihancurkan.
Metode UnmanagedToManagedTransition Memberi tahu profiler bahwa transisi dari kode yang tidak dikelola ke kode terkelola telah terjadi.

Komentar

CLR memanggil metode di ICorProfilerCallback antarmuka (atau ICorProfilerCallback2) untuk memberi tahu profiler ketika peristiwa, tempat profiler telah berlangganan, terjadi. Ini adalah antarmuka panggilan balik utama tempat CLR berkomunikasi dengan profiler kode.

Profiler kode harus mengimplementasikan metode ICorProfilerCallback antarmuka. Untuk .NET Framework versi 2.0 atau yang lebih baru, profiler juga harus menerapkan ICorProfilerCallback2 metode . Setiap implementasi metode harus mengembalikan HRESULT yang memiliki nilai S_OK pada keberhasilan atau E_FAIL pada kegagalan. Saat ini, CLR mengabaikan HRESULT yang dikembalikan oleh setiap panggilan balik kecuali ICorProfilerCallback::ObjectReferences.

Di registri Microsoft Windows, profiler kode harus mendaftarkan objek Model Objek Komponen (COM) yang mengimplementasikan ICorProfilerCallback antarmuka dan ICorProfilerCallback2 . Profiler kode berlangganan peristiwa yang ingin menerima pemberitahuan dengan memanggil ICorProfilerInfo::SetEventMask. Ini biasanya dilakukan dalam implementasi profiler ICorProfilerCallback::Initialize. Profiler kemudian dapat menerima pemberitahuan dari runtime ketika peristiwa akan terjadi atau baru saja terjadi dalam proses runtime eksekusi.

Nota

Profiler mendaftarkan satu objek COM. Jika profiler menargetkan .NET Framework versi 1.0 atau 1.1, objek COM tersebut hanya perlu menerapkan metode ICorProfilerCallback. Jika menargetkan .NET Framework versi 2.0 atau yang lebih baru, objek COM juga harus menerapkan metode ICorProfilerCallback2.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: CorProf.idl, CorProf.h

Perpustakaan: CorGuids.lib

Versi .NET Framework: Tersedia sejak 1.0

Lihat juga