Fungsi FunctionLeave
Memberi tahu profiler bahwa suatu fungsi akan kembali ke penelepon.
Catatan
Fungsi FunctionLeave
ini tidak digunakan lagi dalam .NET Framework 2.0. Ini akan terus bekerja, tetapi akan dikenakan penalti kinerja. Gunakan fungsi FunctionLeave2 sebagai gantinya.
Sintaks
void __stdcall FunctionLeave (
[in] FunctionID funcID
);
Parameter
funcID
[in] Pengidentifikasi fungsi yang kembali.
Keterangan
Fungsi FunctionLeave
adalah panggilan balik; Anda harus menerapkannya. Implementasi harus menggunakan atribut kelas penyimpanan __declspec
(naked
).
Mesin eksekusi tidak menyimpan register apa pun sebelum memanggil fungsi ini.
Saat masuk, Anda harus menyimpan semua register yang Anda gunakan, termasuk yang ada di floating-point unit (FPU).
Saat keluar, Anda harus memulihkan tumpukan dengan memunculkan semua parameter yang didorong oleh pemanggilnya.
Implementasi FunctionLeave
tidak boleh memblokir karena akan menunda pengumpulan sampah. Implementasi tidak boleh mencoba pengumpulan sampah karena tumpukannya mungkin tidak dalam keadaan yang ramah pengumpulan sampah. Jika pengumpulan sampah dicoba, runtime akan memblokir hingga FunctionLeave
kembali.
Selain itu, fungsi FunctionLeave
tidak boleh memanggil kode terkelola atau dengan cara apa pun menyebabkan alokasi memori terkelola.
Persyaratan
Platform: Lihat Persyaratan Sistem.
Header: CorProf.idl
Pustaka: CorGuids.lib
Versi .NET Framework: 1.1, 1.0