ICorProfilerCallback::RemotingClientInvocationFinished メソッド
リモート処理呼び出しがクライアントで最後まで実行されたことをプロファイラーに通知します。
構文
HRESULT RemotingClientInvocationFinished();
解説
リモート処理呼び出しが同期であった場合は、サーバー上でも最後まで実行されています。 リモート処理呼び出しが非同期であった場合は、呼び出しが処理される時点でも、まだ応答があることが予想されます。 応答が予想される場合、それは ICorProfilerCallback::RemotingClientReceivingReply への呼び出しとして、また RemotingClientInvocationFinished
への追加呼び出しとして発生し、非同期呼び出しの必須のセカンダリ処理を示します。
次のコールバック ペアはいずれも、同じスレッドで実行されます。
RemotingClientInvocationStarted
および ICorProfilerCallback::RemotingClientSendingMessageICorProfilerCallback::RemotingClientReceivingReply と ICorProfilerCallback::RemotingClientInvocationFinished
ICorProfilerCallback::RemotingServerInvocationReturned と ICorProfilerCallback::RemotingServerSendingReply
リモート処理コールバックでは、次の問題に注意してください。
リモート処理関数の実行がプロファイラー API によって反映されることはないため、クライアントから呼び出され、サーバーで実行された関数の通知は正しく受信されません。 実際の呼び出しは、プロキシ オブジェクト経由で行われます。プロファイラーにとっては、特定の関数が JIT でコンパイルされているが、使用されていないように見えます。
非同期のリモート処理イベントについては、プロファイラーは正確な通知を受信しません。
必要条件
:「システム要件」を参照してください。
ヘッダー : CorProf.idl、CorProf.h
ライブラリ: CorGuids.lib
.NET Framework のバージョン: 2.0 以降で使用可能
関連項目
.NET