Freigeben über


ILease.InitialLeaseTime-Eigenschaft

Ruft die Anfangsdauer für den Lease ab oder legt diese fest.

Namespace: System.Runtime.Remoting.Lifetime
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Property InitialLeaseTime As TimeSpan
'Usage
Dim instance As ILease
Dim value As TimeSpan

value = instance.InitialLeaseTime

instance.InitialLeaseTime = value
TimeSpan InitialLeaseTime { get; set; }
property TimeSpan InitialLeaseTime {
    TimeSpan get ();
    void set (TimeSpan value);
}
/** @property */
TimeSpan get_InitialLeaseTime ()

/** @property */
void set_InitialLeaseTime (TimeSpan value)
function get InitialLeaseTime () : TimeSpan

function set InitialLeaseTime (value : TimeSpan)

Eigenschaftenwert

Die Anfangsdauer für den Lease.

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der direkte Aufrufer führt den Aufruf über einen Verweis auf die Schnittstelle aus und verfügt nicht über die Berechtigung für die Infrastruktur.

Hinweise

Wenn die InitialLeaseTime-Eigenschaft auf TimeSpan.Zero festgelegt ist, läuft der Lease nie ab, und das ihm zugeordnete Objekt hat eine unbegrenzte Lebensdauer.

Beispiel

Im folgenden Beispiel wird mit RemotingServices.GetLifetimeService ein Objekt abgerufen, das die ILease-Schnittstelle implementiert. Für das Kompilieren und Ausführen dieses Beispiel benötigen Sie den vollständigen Code für Client, Server und gemeinsam genutzte Bibliothek aus dem Beispiel für ILease.

' Register the channel.
Dim myChannel As New TcpChannel()
ChannelServices.RegisterChannel(myChannel)
RemotingConfiguration.RegisterActivatedClientType( _
                  GetType(HelloService), "Tcp://localhost:8085")

Dim myTimeSpan As TimeSpan = TimeSpan.FromMinutes(10)

' Create a remote object.
Dim myService As New HelloService()

Dim myLease As ILease
myLease = CType(RemotingServices.GetLifetimeService(myService), ILease)
If myLease Is Nothing Then
   Console.WriteLine("Cannot lease.")
   Return
End If

Console.WriteLine("Initial lease time is " & myLease.InitialLeaseTime.ToString())
Console.WriteLine("Current lease time is " & myLease.CurrentLeaseTime.ToString())
Console.WriteLine("Renew on call time is " & myLease.RenewOnCallTime.ToString())
Console.WriteLine("Sponsorship timeout is " & myLease.SponsorshipTimeout.ToString())
Console.WriteLine("Current lease state is " & myLease.CurrentState.ToString())
// Register the channel.
TcpChannel myChannel = new TcpChannel ();
ChannelServices.RegisterChannel(myChannel);
RemotingConfiguration.RegisterActivatedClientType(
                       typeof(HelloService),"Tcp://localhost:8085");

TimeSpan myTimeSpan = TimeSpan.FromMinutes(10);

// Create a remote object.
HelloService myService = new HelloService();

ILease myLease;
myLease = (ILease)RemotingServices.GetLifetimeService(myService);
if (myLease == null)
{
   Console.WriteLine("Cannot lease.");
   return;
}

Console.WriteLine ("Initial lease time is " + myLease.InitialLeaseTime);
Console.WriteLine ("Current lease time is " + myLease.CurrentLeaseTime);
Console.WriteLine ("Renew on call time is " + myLease.RenewOnCallTime);
Console.WriteLine ("Sponsorship timeout is " + myLease.SponsorshipTimeout);
Console.WriteLine ("Current lease state is " + myLease.CurrentState.ToString());
// Register the channel.
TcpChannel^ myChannel = gcnew TcpChannel;
ChannelServices::RegisterChannel( myChannel );
RemotingConfiguration::RegisterActivatedClientType( HelloService::typeid, "Tcp://localhost:8085" );
TimeSpan myTimeSpan = TimeSpan::FromMinutes( 10 );

// Create a remote object.
HelloService ^ myService = gcnew HelloService;
ILease^ myLease;
myLease = dynamic_cast<ILease^>(RemotingServices::GetLifetimeService( myService ));
if ( myLease == nullptr )
{
   Console::WriteLine( "Cannot lease." );
   return  -1;
}

Console::WriteLine( "Initial lease time is {0}", myLease->InitialLeaseTime );
Console::WriteLine( "Current lease time is {0}", myLease->CurrentLeaseTime );
Console::WriteLine( "Renew on call time is {0}", myLease->RenewOnCallTime );
Console::WriteLine( "Sponsorship timeout is {0}", myLease->SponsorshipTimeout );
Console::WriteLine( "Current lease state is {0}", myLease->CurrentState );

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

ILease-Schnittstelle
ILease-Member
System.Runtime.Remoting.Lifetime-Namespace