Export (0) Print
Expand All

MarshalByRefObject::InitializeLifetimeService Method

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

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

public:
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.

ExceptionCondition
SecurityException

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
{
public:

   [System::Security::Permissions::SecurityPermissionAttribute
   (System::Security::Permissions::SecurityAction::Demand,
   Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)]
   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;
   }

};

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

  • SecurityCriticalAttribute 

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

Show:
© 2015 Microsoft