System.Runtime.Remoting.Lifetime 命名空间

System.Runtime.Remoting.Lifetime 命名空间包含管理远程对象生存期的类。

传统上,分布式垃圾回收使用引用计数和 Ping 来控制对象的生存期。当每个服务只有少数客户端时,这将会很好地工作,但当每个服务有成千上万个客户端时,将无法很好地扩展。远程处理生存期服务将每个服务与租约关联起来,并在服务的租约时间到期时删除该服务。生存期服务可以采用传统的分布式垃圾回收器的功能,并且当每个服务的客户端数目增加时将很好地进行调整。

每个应用程序域都包含一个租约管理器,负责控制其域内的租约。对所有租约都要进行定期检查以确定租约时间是否到期。如果某个租约已经到期,将调用该租约的一个或多个主办方,并向它们提供续订该租约的机会。如果没有主办方决定续订该租约,租约管理器将移除该租约,然后垃圾回收器就可以回收该对象。租约管理器维护一个按剩余租约时间排序的租约列表。剩余时间最短的租约被存储在该列表的顶部。

  说明
公共类 ClientSponsor 为生存期主办方类提供默认实现。
公共类 LifetimeServices 控制 .NET 远程处理生存期服务。

接口

  接口 说明
公共接口 ILease 定义远程处理生存期服务所使用的生存期租约对象。
公共接口 ISponsor 指示该实施者希望成为生存期租约主办方。

枚举

  枚举 说明
公共枚举 LeaseState 指示生存期租约可能具有的租约状态。