Bagikan melalui


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

Lihat juga