次の方法で共有


IServiceCall::OnCall メソッド (comsvcs.h)

このメソッドに実装されているバッチ作業の実行をトリガーします。

構文

HRESULT OnCall();

戻り値

このメソッドは、E_INVALIDARG、E_OUTOFMEMORY、E_FAIL、S_OKの標準戻り値を返すことができます。

解説

このメソッドで実行されるバッチ処理は、 CoCreateActivity の呼び出しによって作成されたアクティビティのコンテキストとスレッド アパートメントで実行されます。 このメソッドのバッチ処理は、CoCreateActivity の呼び出しから返された IServiceActivity ポインターを使用して、SynchronousCall または AsynchronousCall の呼び出しによって実行されます。

CoCreateActivity によって作成されたアクティビティ オブジェクトが同期されたコンテキストで作成されない状況では、このメソッドがスレッド セーフであることを確認する必要があります。このような状況では、OnCall の多くの呼び出しを同時に実行できるためです。

システムから最適なパフォーマンスを得るには、 CoCreateActivity によって作成されたアクティビティのコンテキスト構成を 、OnCall メソッドによって実行されるバッチ作業と一致させる必要があります。 たとえば、 OnCall メソッドのバッチ処理でプール可能なオブジェクトが使用されている場合、 CoCreateActivity によって作成されるアクティビティは、マルチスレッド アパートメント (MTA) を使用するように構成する必要があります。

要件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー comsvcs.h

関連項目

IServiceCall