Bagikan melalui


Metode ICorProfilerCallback::Shutdown

Memberi tahu profiler bahwa aplikasi dimatikan.

Sintaks

HRESULT Shutdown();  

Keterangan

Kode profiler tidak dapat memanggil metode antarmuka ICorProfilerInfo dengan aman setelah metode Shutdown dipanggil. Setiap panggilan ke metode ICorProfilerInfo mengakibatkan perilaku yang tidak terdefinisi setelah metode Shutdown kembali. Peristiwa tertentu yang tidak berubah mungkin masih terjadi setelah mematikan; profiler harus berhati-hati untuk segera kembali ketika ini terjadi.

Metode Shutdown ini akan dipanggil hanya jika aplikasi terkelola yang sedang diprofilkan dimulai sebagai kode terkelola (yaitu, bingkai awal pada tumpukan proses dikelola). Jika aplikasi dimulai sebagai kode yang tidak dikelola tetapi kemudian melompat ke kode terkelola, sehingga membuat instans runtime bahasa umum (CLR), maka Shutdown tidak akan dipanggil. Untuk kasus ini, profiler harus menyertakan dalam pustakanya DllMain rutinitas yang menggunakan nilai DLL_PROCESS_DETACH untuk mengosongkan sumber daya apa pun dan melakukan pemrosesan pembersihan datanya, seperti membersihkan jejak ke disk dan sebagainya.

Secara umum, profiler harus mengatasi mematikan yang tidak terduga. Misalnya, proses mungkin dihentikan dengan metode TerminateProcess Win32 (dinyatakan dalam Winbase.h). Dalam kasus lain, CLR akan menghentikan utas terkelola tertentu (utas latar belakang) tanpa mengirimkan pesan penghancuran yang teratur untuk mereka.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: CorProf.idl, CorProf.h

Pustaka: CorGuids.lib

Versi .NET Framework: Tersedia mulai dari 2.0

Lihat juga