System.Runtime.Remoting.Lifetime Namespace

El espacio de nombres System.Runtime.Remoting.Lifetime contiene las clases que administran la duración de los objetos remotos. The System.Runtime.Remoting.Lifetime namespace contains classes that manage the lifetime of remote objects.

Clases

ClientSponsor

Proporciona una implementación predeterminada para una clase de patrocinador del período de duración.Provides a default implementation for a lifetime sponsor class.

LifetimeServices

Controla los servicios de duración de .NET Remoting.Controls the.NET remoting lifetime services.

Interfaces

ILease

Define un objeto de concesión de período de duración que utiliza el servicio de duración de comunicación remota.Defines a lifetime lease object that is used by the remoting lifetime service.

ISponsor

Indica que el implementador desea ser un patrocinador de concesiones de período de duración.Indicates that the implementer wants to be a lifetime lease sponsor.

Enumeraciones

LeaseState

Indica los estados posibles de un período de duración.Indicates the possible lease states of a lifetime lease.

Comentarios

Tradicionalmente, colección de elementos no utilizados distribuida utiliza recuentos de referencias y hacer ping para controlar la duración de objetos.Traditionally, distributed garbage collection uses reference counts and pinging for control over the lifetime of objects. Esto funciona bien cuando hay pocos clientes por servicio, pero no se escala bien cuando hay miles de clientes por cada servicio.This works well when there are a few clients per service, but doesn't scale well when there are thousands of clients per service. El servicio de duración de comunicación remota asocia una concesión con cada servicio y elimina un servicio cuando expire su tiempo de concesión.The remoting lifetime service associates a lease with each service, and deletes a service when its lease time expires. El servicio de duración puede asumir la función de un recolector de elementos no utilizados distribuida tradicionales, y se ajusta bien al aumentar el número de clientes por servidor.The lifetime service can take on the function of a traditional distributed garbage collector, and it also adjusts well when the numbers of clients per server increases.

Cada dominio de aplicación contiene un administrador de concesiones que es responsable de controlar las concesiones en su dominio.Each application domain contains a lease manager that is responsible for controlling leases in its domain. Todas las concesiones se examinan periódicamente para tiempos de concesión expirada.All leases are examined periodically for expired lease times. Si una concesión ha expirado, se invoca uno o varios de los patrocinadores y se tiene la oportunidad de renovar la concesión.If a lease has expired, one or more of the lease's sponsors are invoked and given the opportunity to renew the lease. Si ninguno de los patrocinadores decide renovar la concesión, el Administrador de concesiones elimina la concesión y se puede recopilar el objeto por el recolector de elementos no utilizados.If none of the sponsors decides to renew the lease, the lease manager removes the lease and the object can be collected by the garbage collector. El Administrador de concesiones mantiene una lista de concesiones ordenadas por tiempo de concesión restante.The lease manager maintains a lease list with leases sorted by remaining lease time. Las concesiones con el menor tiempo restante se almacenan en la parte superior de la lista.The leases with the shortest remaining time are stored at the top of the list.