FunctionLeave3WithInfo İşlevi
Bir işlevden denetimin döndürüldüğünü profil oluşturucuya bildirir ve yığın çerçevesini ve dönüş değerini almak için ICorProfilerInfo3::GetFunctionLeave3Info yöntemine geçirilebilen bir tanıtıcı sağlar.
Sözdizimi
void __stdcall FunctionLeave3WithInfo(
[in] FunctionIDOrClientID functionIDOrClientID,
[in] COR_PRF_ELT_INFO eltInfo);
Parametreler
functionIDOrClientID
[in] Denetimin döndürüldiği işlevin tanımlayıcısı.
eltInfo
[in] Belirli bir yığın çerçevesi hakkındaki bilgileri temsil eden opak bir tanıtıcı. Bu tanıtıcı yalnızca geçirildiği geri çağırma sırasında geçerlidir.
Açıklamalar
FunctionLeave3WithInfo
Geri çağırma yöntemi, işlevler çağrıldığında profil oluşturucuyu bilgilendirir ve profil oluşturucunun dönüş değerini incelemek için ICorProfilerInfo3::GetFunctionLeave3Info yöntemini kullanmasına izin verir. Dönüş değeri bilgilerine erişmek için bayrağının COR_PRF_ENABLE_FUNCTION_RETVAL
ayarlanması gerekir. Profil oluşturucu, olay bayraklarını ayarlamak için ICorProfilerInfo::SetEventMask yöntemini kullanabilir ve ardından bu işlevi uygulamanızı kaydetmek için ICorProfilerInfo3::SetEnterLeaveFunctionHooks3WithInfo yöntemini kullanabilir.
FunctionLeave3WithInfo
işlevi 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 yazmaç 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ı FunctionLeave3WithInfo
, çöp toplamayı geciktireceği için engellememelidir. Yığın çöp toplama dostu bir durumda olmayabileceği için uygulama çöp toplama denememelidir. Çöp toplama denenirse, çalışma zamanı dönene kadar FunctionLeave3WithInfo
engeller.
İşlev yönetilen FunctionLeave3WithInfo
kodu çağırmamalı veya herhangi bir şekilde yönetilen bellek ayırmaya 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