Aracılığıyla paylaş


FunctionLeave3 İşlevi

Bir işlevden denetimin döndürüldüğünü profil oluşturucuya bildirir.

Sözdizimi

void __stdcall FunctionLeave3(FunctionOrRemappedID functionOrRemappedID);  

Parametreler

functionOrRemappedID [in] Denetimin döndürüldiği işlevin tanımlayıcısı.

Açıklamalar

FunctionLeave3 Geri çağırma işlevi, işlevler çağrıldığında profil oluşturucuya bildirimde bulunur, ancak dönüş değeri incelemesini desteklemez. Bu işlevi uygulamanızı kaydetmek için ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 yöntemini kullanın.

FunctionLeave3 İşlev bir geri çağırmadır; bunu uygulamanız gerekir. Uygulamanın depolama sınıfı özniteliğini __declspec(naked) kullanması gerekir.

Yürütme altyapısı bu işlevi çağırmadan önce hiçbir kayıt kaydetmez.

  • Girişte, kayan nokta birimindeki (FPU) olanlar da dahil olmak üzere kullandığınız tüm yazmaçları kaydetmeniz gerekir.

  • Çıkışta, çağıranı tarafından gönderilen tüm parametreleri çıkararak yığını geri yüklemeniz gerekir.

uygulaması FunctionLeave3 , çöp toplamayı geciktireceğinden engellememelidir. Yığın çöp toplama dostu bir durumda olmadığından uygulama çöp toplama denememelidir. Bir çöp toplama denenirse, çalışma zamanı dönene kadar FunctionLeave3 engeller.

İşlev, FunctionLeave3 yönetilen kodu çağırmamalı veya yönetilen bellek ayırmaya hiçbir şekilde neden olmamalıdır.

Gereksinimler

Platform: Bkz. Sistem Gereksinimleri.

Üstbilgi: CorProf.idl

Kitaplığı: CorGuids.lib

.NET Framework Sürümleri: 4'ten beri kullanılabilir

Ayrıca bkz.