次の方法で共有


System.Runtime.Remoting.Lifetime 名前空間

リモート オブジェクトの有効期間を管理するクラスが含まれています。

クラス

ClientSponsor

有効期間スポンサ クラスの既定の実装を提供します。

LifetimeServices

.NET リモート処理有効期間サービスを制御します。

インターフェイス

ILease

リモート処理有効期間サービスによって使用される有効期間リース オブジェクトを定義します。

ISponsor

このインターフェイスを実装するオブジェクトが、有効期間リース スポンサとなることを示します。

列挙型

LeaseState

有効期間リースの有効なリースのステータスを示します。

注釈

従来、分散ガベージ コレクションでは、参照カウントと ping を使用して、オブジェクトの有効期間を制御します。 これは、サービスごとに少数のクライアントがある場合に適切に機能しますが、サービスごとに何千ものクライアントがある場合は適切にスケーリングされません。 リモート処理有効期間サービスは、リースを各サービスに関連付け、リース時間が経過するとサービスを削除します。 有効期間サービスは、従来の分散ガベージ コレクターの機能を引き受けることができます。また、サーバーあたりのクライアント数が増えると、適切に調整されます。

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