<lifetime> 要素
アプリケーションがサービスを提供する対象の、クライアント側でアクティブ化される全オブジェクトの有効期間に関する情報を指定します。各オブジェクトに対して個別に有効期間を設定するには、リモート型に対する MarshalByRefObject.InitializeLifetimeService をオーバーライドします。
<configuration>
<system.runtime.remoting>
<application>
<lifetime>
<lifetime
leaseTime="leasetime" sponsorshipTimeout="sponsorshipTimeOut" renewOnCallTime="renewOnCallTime"leaseManagerPollTime="pollTime"/>
省略可能属性
属性 | 説明 |
---|---|
leaseTime | アプリケーションのリース時間を指定します。leaseTime の既定値は 5 分です。 |
sponsorshipTimeout | リース時間が経過したことが通知された後、リース マネージャがスポンサの応答を待機する時間を指定します。指定した時間内にスポンサが応答しない場合は、ガベージ コレクタがリモート オブジェクトを破棄します。sponsorshipTimeout の既定値は 2 分です。 |
renewOnCallTime | オブジェクトに対して関数が呼び出されるたびに延長されるリース時間の長さを指定します。renewOnCallTime の既定値は 2 分です。 |
leaseManagerPollTime | リース時間が経過したことを確認した後、リース マネージャがスリープする時間を指定します。leaseManagerPollTime の既定値は 10 秒です。 |
解説
<lifetime> 要素には 4 つの属性を指定でき、これらの要素は省略できます。各要素の有効値は 10 進値で、単位は時間単位です。有効な時間単位は、日を表す D、時間を表す H、分を表す M、秒を表す S、ミリ秒を表す MS です。単位を指定しない場合、既定の時間単位は秒になります。たとえば、"10" は "10S" と解釈されます。
例
クライアント側でアクティブ化される全オブジェクトのリース時間を 5 分に、スポンサのタイムアウト時間を 2 分に、メソッドが呼び出されるたびに延長されるリース時間を 2 分に、リース マネージャのポーリング間隔を 10 秒に設定する例を示します。
<lifetime
leaseTime="5M"
sponsorshipTimeOut="2M"
renewOnCallTime="2M"
leaseManagerPollTime="10S"
/>
必要条件
構成ファイル : アプリケーション構成ファイル、マシン構成ファイル (Machine.config)