次の方法で共有


System.Runtime.Remoting.Lifetime 名前空間

System.Runtime.Remoting.Lifetime 名前空間は、リモート オブジェクトの有効期間を管理するクラスを格納します。

従来、配布されたガベージ コレクションは、オブジェクトの有効期間を制御するために参照カウントと ping を使用していました。この方法は、サービスごとのクライアント数が少ない場合には機能しますが、千単位のクライアント数の場合にはうまく機能しません。リモート処理有効期間サービスは、リースを各サービスに関連付け、そのリース期間が切れると関連付けられたサービスを削除します。有効期間サービスは、従来の配布されたガベージ コレクタの機能を実行できます。さらに、サーバーごとのクライアント数が増加した場合にも対応できます。

各アプリケーション ドメインは、ドメイン内のリースを制御するリース マネージャを格納します。すべてのリースは、リース期間が切れていないか定期的にチェックされます。リース期間が切れていた場合は、1 つ以上のリース スポンサが呼び出され、そのリースを更新します。リースの更新を決定するスポンサがない場合は、リース マネージャがそのリースを削除し、ガベージ コレクタによってオブジェクトを収集できます。リース マネージャは、残りのリース期間で並べ替えられたリースのリース リストを維持します。残りの期間が最も短いリースは、リストの一番上に格納されます。

名前空間の階層構造

クラス

クラス 説明
ClientSponsor 有効期間スポンサ クラスの既定の実装を提供します。
LifetimeServices .NET リモート処理有効期間サービスを制御します。

インターフェイス

インターフェイス 説明
ILease リモート処理有効期間サービスによって使用される有効期間リース オブジェクトを定義します。
ISponsor このインターフェイスを実装するオブジェクトが、有効期間リース スポンサとなることを示します。

列挙体

列挙体 説明
LeaseState 有効期間リースの有効なリースのステータスを示します。

参照

.NET Framework クラス ライブラリ