FunctionLeave3 関数
関数から制御が戻されていることをプロファイラーに通知します。
構文
void __stdcall FunctionLeave3(FunctionOrRemappedID functionOrRemappedID);
パラメーター
functionOrRemappedID
[in] 制御が返された関数の識別子。
解説
FunctionLeave3
コールバック関数によって、関数が呼び出されていることがプロファイラーに通知されますが、戻り値の検査はサポートされません。 ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 メソッドを使用して、この関数の実装を登録します。
FunctionLeave3
関数はコールバックであるため、実装する必要があります。 実装では、__declspec(naked)
ストレージ クラス属性を使用する必要があります。
この関数を呼び出す前に、実行エンジンではレジスタは保存されません。
開始時には、浮動小数点演算ユニット (FPU) 内のものを含め、使用するすべてのレジスタを保存する必要があります。
終了時には、呼び出し元によってプッシュされたすべてのパラメーターをポップして、スタックを復元する必要があります。
FunctionLeave3
の実装では、ガベージ コレクションが遅れるためブロックしないでください。 スタックがガベージ コレクション対応状態ではない可能性があるため、この実装ではガベージ コレクションを試行しないでください。 ガベージ コレクションが試行された場合、FunctionLeave3
が返されるまでランタイムはブロックされます。
FunctionLeave3
関数では、マネージド コードを呼び出すことはできません。呼び出すと、何らかのマネージド メモリ割り当てが行われます。
要件
:「システム要件」を参照してください。
ヘッダー: CorProf.idl
ライブラリ: CorGuids.lib
.NET Framework のバージョン: 4 以降で使用可能
関連項目
.NET