DispatchRuntime.InstanceProvider プロパティ

定義

サービス オブジェクトの作成と破棄の制御に使用できる IInstanceProvider オブジェクトを取得または設定します。

public:
 property System::ServiceModel::Dispatcher::IInstanceProvider ^ InstanceProvider { System::ServiceModel::Dispatcher::IInstanceProvider ^ get(); void set(System::ServiceModel::Dispatcher::IInstanceProvider ^ value); };
public System.ServiceModel.Dispatcher.IInstanceProvider InstanceProvider { get; set; }
member this.InstanceProvider : System.ServiceModel.Dispatcher.IInstanceProvider with get, set
Public Property InstanceProvider As IInstanceProvider

プロパティ値

IInstanceProvider

IInstanceProvider オブジェクトに関連付けられたサービス オブジェクトの生成と破棄を制御する InstanceContext オブジェクト。

注釈

インターフェイスを IInstanceProvider 実装し、パラメーターなしのコンストラクター以外のコンストラクターを使用してサービス型のインスタンスを制御する実装をプロパティに割り当てます InstanceProvider 。たとえば、インスタンス プールなどのカスタムインスタンス化モードを実装します。

通常、GetInstance メソッドは、InstanceContext オブジェクトが最初に生成されたときに、一度だけ呼び出されます。 ReleaseInstance メソッドも、InstanceContext がクローズされたときに、一度だけ呼び出されます。

InstanceContext オブジェクトがクローズされる前にインスタンスを解放するように、サービスを構成することもできます。 それには、ReleaseInstanceMode プロパティを使用するか、ReleaseServiceInstance メソッドを呼び出します。 そうすると、InstanceContext オブジェクトは ReleaseInstance メソッドを呼び出します。 インスタンスが解放された後に新しいメッセージが着信すると、GetInstance メソッドによって新しいインスタンスが生成されます。

適用対象