Teilen über


ILease Schnittstelle

Definition

Definiert ein Lebensdauerlease-Objekt, das vom Remoting-Lebensdauerdienst verwendet wird.

public interface class ILease
public interface ILease
[System.Runtime.InteropServices.ComVisible(true)]
public interface ILease
type ILease = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type ILease = interface
Public Interface ILease
Attribute

Hinweise

Verteilte Garbage Collection steuert, wann Serveranwendungen gelöscht werden können. In der Regel verwendet die verteilte Garbage Collection Die Verweisanzahl und das Pingen für die Steuerung. Dies funktioniert gut, wenn ein paar Clients pro Objekt vorhanden sind, funktioniert aber nicht gut, wenn pro Objekt Tausende von Clients vorhanden sind. Der Lebensdauerdienst kann die Funktion eines herkömmlichen verteilten Garbage Collector übernehmen und gut skaliert werden, wenn die Anzahl der Clients zunimmt.

Der Lebensdauerdienst ordnet jedem remote aktivierten Objekt eine Lease zu. Wenn die Lease abläuft, wird das Objekt entfernt. Eine Lease kann angeben, dass ein Objekt über eine unbegrenzte Lebensdauer verfügt.

Jede AppDomain enthält einen Lease-Manager, der die Leases in der Domäne verwaltet. Der Lease-Manager überprüft die Leases in regelmäßigen Abständen auf den Ablauf der Zeit. Wenn ein Lease abgelaufen ist, kann er entweder durch Entfernen des Verweises auf den Leasingvertrag gekündigt oder durch Aufrufen eines oder mehrerer Sponsoren des Leasings verlängert werden.

Eine Lease enthält Eigenschaften, die ihre Richtlinien bestimmen, und Methoden, mit denen die Leasezeit verlängert wird. Die Lease macht die ILease -Schnittstelle verfügbar.

Ein Beispiel für die Verwendung der ILease -Schnittstelle finden Sie unter Lebensdauern.

Eigenschaften

CurrentLeaseTime

Ruft die für den Lease verbleibende Zeitspanne ab.

CurrentState

Ruft den aktuellen LeaseState des Lease ab.

InitialLeaseTime

Ruft die Anfangsdauer für den Lease ab oder legt diese fest.

RenewOnCallTime

Ruft die Zeitspanne ab, um die ein Aufruf des Remoteobjekts die CurrentLeaseTime erneuert, oder legt diese fest.

SponsorshipTimeout

Ruft die Zeitspanne ab, die gewartet werden soll, bis der Sponsor die Erneuerungszeit für den Lease zurückgibt, oder legt diese fest.

Methoden

Register(ISponsor)

Registriert einen Sponsor für den Lease, ohne den Lease zu erneuern.

Register(ISponsor, TimeSpan)

Registriert einen Sponsor für den Lease und erneuert ihn um die angegebene TimeSpan.

Renew(TimeSpan)

Erneuert einen Lease für die angegebene Zeit.

Unregister(ISponsor)

Entfernt einen Sponsor aus der Sponsorenliste.

Gilt für: