MarshalByRefObject::InitializeLifetimeService Method ()


Obtains a lifetime service object to control the lifetime policy for this instance.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

virtual Object^ InitializeLifetimeService()

Return Value

Type: System::Object^

An object of type ILease used to control the lifetime policy for this instance. This is the current lifetime service object for this instance if one exists; otherwise, a new lifetime service object initialized to the value of the LifetimeServices::LeaseManagerPollTime property.

Exception Condition

The immediate caller does not have infrastructure permission.

For more information about lifetime services, see the LifetimeServices class.

The following code example demonstrates creating a lease.

public ref class MyClass: public MarshalByRefObject

   virtual Object^ InitializeLifetimeService() override
      ILease^ lease = dynamic_cast<ILease^>(MarshalByRefObject::InitializeLifetimeService());
      if ( lease->CurrentState == LeaseState::Initial )
         lease->InitialLeaseTime = TimeSpan::FromMinutes( 1 );
         lease->SponsorshipTimeout = TimeSpan::FromMinutes( 2 );
         lease->RenewOnCallTime = TimeSpan::FromSeconds( 2 );

      return lease;



requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

.NET Framework
Available since 1.1
Return to top