LifetimeServices.RenewOnCallTime Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta l'intervallo di tempo in base al quale il lease viene esteso ogni volta che viene eseguita una chiamata nell'oggetto server.
public:
static property TimeSpan RenewOnCallTime { TimeSpan get(); void set(TimeSpan value); };
public static TimeSpan RenewOnCallTime { get; set; }
public static TimeSpan RenewOnCallTime { get; [System.Security.SecurityCritical] set; }
static member RenewOnCallTime : TimeSpan with get, set
[<set: System.Security.SecurityCritical>]
static member RenewOnCallTime : TimeSpan with get, set
Public Shared Property RenewOnCallTime As TimeSpan
Valore della proprietà
Oggetto TimeSpan in base al quale viene esteso un lease di durata nell'oggetto corrente AppDomain dopo ogni chiamata.
- Attributi
Eccezioni
Almeno uno dei chiamanti più in alto nello stack di chiamate non dispone dell'autorizzazione per configurare tipi e canali remoti. Questa eccezione viene generata solo quando si imposta il valore della proprietà.
Esempio
// 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 );
// 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.
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())
Commenti
Il tempo di rinnovo predefinito per il quale viene esteso un lease di durata è di 2 minuti.