Defines a lifetime lease object that is used by the remoting lifetime service.
Assembly: mscorlib (in mscorlib.dll)
Thetype exposes the following members.
|CurrentLeaseTime||Gets the amount of time remaining on the lease.|
|CurrentState||Gets the current LeaseState of the lease.|
|InitialLeaseTime||Gets or sets the initial time for the lease.|
|RenewOnCallTime||Gets or sets the amount of time by which a call to the remote object renews the CurrentLeaseTime.|
|SponsorshipTimeout||Gets or sets the amount of time to wait for a sponsor to return with a lease renewal time.|
Distributed garbage collection controls when server applications can be deleted. Traditionally, distributed garbage collection uses reference counts and pinging for control. This works well when there are a few clients per object, but does not work well when there are thousands of clients per each object. The lifetime service can assume the function of a traditional distributed garbage collector, and scales well when the number of clients increases.
The lifetime service associates a lease with each remotely activated object. When the lease expires, the object is removed. A lease can specify that an object has an infinite lifetime.
Each AppDomain contains a lease manager that administers the leases in the domain. The lease manager periodically examines the leases for time expiration. If a lease has expired, it can either be canceled by removing its reference to the lease, or renewed by invoking one or more of the lease's sponsors.
A lease contains properties that determine its policies, and methods that renew the lease time. The lease exposes the interface.
For an example showing how to use the interface see Lifetimes.