Lire en anglais

Partager via


ClientSponsor Classe

Définition

Fournit une implémentation par défaut d'une classe de sponsor de durée de vie.

C#
public class ClientSponsor : MarshalByRefObject, System.Runtime.Remoting.Lifetime.ISponsor
C#
[System.Runtime.InteropServices.ComVisible(true)]
public class ClientSponsor : MarshalByRefObject, System.Runtime.Remoting.Lifetime.ISponsor
C#
[System.Runtime.InteropServices.ComVisible(true)]
[System.Security.SecurityCritical]
public class ClientSponsor : MarshalByRefObject, System.Runtime.Remoting.Lifetime.ISponsor
Héritage
ClientSponsor
Attributs
Implémente

Exemples

L’exemple suivant illustre la classe ClientSponsor pour étendre la durée de vie d’un objet distant activé par la classe.

C#
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
using System.Runtime.Remoting.Lifetime;
namespace RemotingSamples
{

   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();
      }
   }
}

Remarques

L’implémentation actuelle du sponsor à durée de vie peut être utilisée pour sponsoriser des objets en spécifiant le renouvellement TimeSpanrequis.

Note

Cette classe effectue une demande de liaison et une demande d’héritage au niveau de la classe. Un SecurityException est levée lorsque l’appelant immédiat ou la classe dérivée n’a pas d’autorisation d’infrastructure. Pour plus d’informations sur les demandes de sécurité, consultez Demandes de liaison et demandes d’héritage.

Constructeurs

ClientSponsor()

Initialise une nouvelle instance de la classe ClientSponsor avec les valeurs par défaut.

ClientSponsor(TimeSpan)

Initialise une nouvelle instance de la classe ClientSponsor avec la durée de renouvellement de l'objet sponsorisé.

Propriétés

RenewalTime

Obtient ou définit le TimeSpan de prolongation de la durée de vie des objets sponsorisés lors d'une demande de renouvellement.

Méthodes

Close()

Vide la liste des objets inscrits avec ClientSponsor en cours.

CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Finalize()

Libère les ressources du ClientSponsor en cours, avant leur récupération par le garbage collector.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
InitializeLifetimeService()

Initialise une nouvelle instance de ClientSponsor, fournissant un bail pour l'objet en cours.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
Register(MarshalByRefObject)

Inscrit le MarshalByRefObject spécifié pour l'obtention d'un sponsor.

Renewal(ILease)

Demande à un client d'obtention de sponsor de renouveler le bail de l'objet spécifié.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)
Unregister(MarshalByRefObject)

Annule l'inscription du MarshalByRefObject spécifié dans la liste des objets sponsorisés par ClientSponsor en cours.

S’applique à

Produit Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1