ClientSponsor.InitializeLifetimeService 方法    
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 ClientSponsor 的新实例,为当前对象提供租约。
public:
 override System::Object ^ InitializeLifetimeService();
	public override object InitializeLifetimeService ();
	[System.Security.SecurityCritical]
public override object InitializeLifetimeService ();
	override this.InitializeLifetimeService : unit -> obj
	[<System.Security.SecurityCritical>]
override this.InitializeLifetimeService : unit -> obj
	Public Overrides Function InitializeLifetimeService () As Object
	返回
当前对象的 ILease。
- 属性
 
示例
int main()
{
   // Register a channel.
   TcpChannel^ myChannel = gcnew TcpChannel;
   ChannelServices::RegisterChannel( myChannel );
   RemotingConfiguration::RegisterActivatedClientType(
      RemotingSamples::HelloService::typeid, "tcp://localhost:8085/" );
   
   // Get the remote Object*.
   RemotingSamples::HelloService ^ myService = gcnew RemotingSamples::HelloService;
   
   // Get a sponsor for renewal of time.
   ClientSponsor^ mySponsor = gcnew ClientSponsor;
   
   // Register the service with sponsor.
   mySponsor->Register( myService );
   
   // Set renewaltime.
   mySponsor->RenewalTime = TimeSpan::FromMinutes( 2 );
   
   // Renew the lease.
   ILease^ myLease = dynamic_cast<ILease^>(mySponsor->InitializeLifetimeService());
   TimeSpan myTime = mySponsor->Renewal( myLease );
   Console::WriteLine( "Renewed time in minutes is {0}", myTime.Minutes );
   
   // Call the remote method.
   Console::WriteLine( myService->HelloMethod( "World" ) );
   
   // Unregister the channel.
   mySponsor->Unregister( myService );
   mySponsor->Close();
}
class HelloClient
{
    static void Main()
   {
      // Register a channel.
      TcpChannel myChannel = new TcpChannel ();
      ChannelServices.RegisterChannel(myChannel);
      RemotingConfiguration.RegisterActivatedClientType(
                             typeof(HelloService),"tcp://localhost:8085/");
      // Get the remote object.
      HelloService myService = new HelloService();
      // Get a sponsor for renewal of time.
      ClientSponsor mySponsor = new ClientSponsor();
      // Register the service with sponsor.
      mySponsor.Register(myService);
      // Set renewaltime.
      mySponsor.RenewalTime = TimeSpan.FromMinutes(2);
      // Renew the lease.
      ILease myLease = (ILease)mySponsor.InitializeLifetimeService();
      TimeSpan myTime = mySponsor.Renewal(myLease);
      Console.WriteLine("Renewed time in minutes is " + myTime.Minutes.ToString());
      // Call the remote method.
      Console.WriteLine(myService.HelloMethod("World"));
      // Unregister the channel.
      mySponsor.Unregister(myService);
      mySponsor.Close();
   }
}
Class HelloClient
   Shared Sub Main()
      ' Register a channel.
      Dim myChannel As New TcpChannel()
      ChannelServices.RegisterChannel(myChannel)
      RemotingConfiguration.RegisterActivatedClientType( _
                  GetType(HelloService), "tcp://localhost:8085")
      ' Get the remote object.
      Dim myService As New HelloService()
      ' Get a sponsor for renewal of time.
      Dim mySponsor As New ClientSponsor()
      ' Register the service with sponsor.
      mySponsor.Register(myService)
      ' Set renewaltime.
      mySponsor.RenewalTime = TimeSpan.FromMinutes(2)
      ' Renew the lease.
      Dim myLease As ILease = CType(mySponsor.InitializeLifetimeService(), ILease)
      Dim myTime As TimeSpan = mySponsor.Renewal(myLease)
      Console.WriteLine("Renewed time in minutes is " & myTime.Minutes)
      ' Call the remote method.
      Console.WriteLine(myService.HelloMethod("World"))
      ' Unregister the channel.
      mySponsor.Unregister(myService)
      mySponsor.Close()
   End Sub
End Class
	注解
有关详细信息,请参阅 MarshalByRefObject.InitializeLifetimeService。