IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Probleme avec les Event en Remoting


Sujet :

C#

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Probleme avec les Event en Remoting
    Voilà, je vous expose mon problème :
    J'ai un serveur en remoting (Un singleton) et des clients qui s'abonnent à des evenements de celui-ci.
    Tout marche bien, les clients récupere les evenements du serveur. Sauf, après un temps d'inactivité plus ou moins long, là ça plante avec une execption du côté serveur lorsque l'on va pour propager un evenement. L'exception retournée est :

    L'objet '/b4bce9e4_8867_48e4_8421_e2e9caad0da9/617cyefcqzm+mtfwldlr9rwd_2.rem' a été déconnecté ou n'existe pas sur le serveur.

    Alors voilà, si vous avez une idée précise du probleme... vous pouvez me la faire partager, cela me sera d'une grande aide.

    J'ai l'impression que c'est une histoire de lifetime... mais je n'arrive pas à trouvé d'où !

    Merci.

  2. #2
    Membre éclairé
    Avatar de shwin
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2003
    Messages : 568
    Points : 777
    Points
    777
    Par défaut
    il faut que tu override le lifetime
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public override object InitializeLifetimeService()
    		{
    			return null;	// Live forever!
    		}
    Remoting Context Matters
    Everything in this chapter is 100 percent undocumented. Reliance on these techniques is not supported by either Microsoft, the publisher, or the author of this book. Use at you own risk! If your computer won't work afterwards, your toaster blows up or your car doesn't start, I assume no liability whatsoever: You're now about to enter the uncharted territories of .NET and you do so on your own risk. I can only provide some guidance

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci, mais j'override le lifetime de quel objet ?
    Du delegate ?



    (je vais essayé ça en attendant)

  4. #4
    Membre éclairé
    Avatar de shwin
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2003
    Messages : 568
    Points : 777
    Points
    777
    Par défaut
    Il faut override dans l'object (exposé à l'externe) qui hérite de MarshalByRefObject

    donc il faut overrider cette méthode dans ton singleton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    [Synchronization()]
    public class Facade : MarshalByRefObject, IFacade
    {
    		public override object InitializeLifetimeService()
    		{
    			return null;	// Live forever!
    		}
    }
    Remoting Context Matters
    Everything in this chapter is 100 percent undocumented. Reliance on these techniques is not supported by either Microsoft, the publisher, or the author of this book. Use at you own risk! If your computer won't work afterwards, your toaster blows up or your car doesn't start, I assume no liability whatsoever: You're now about to enter the uncharted territories of .NET and you do so on your own risk. I can only provide some guidance

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Ah d'accord, je crois qu'on s'est mal compris. Ce n'est pas mon objet serveur, le singleton, qui plante techniquement, celui-ci a deja un lifetime de 4h et c'est seulement au bout de qlq minutes que j'ai mon probleme.

    Celui-ci se declare lorsque je veux envoyer des evenements aux clients.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bon, apres beaucoup de temps de recherche... j'ai fini par résoudre le problème.

    J'ai un client, un serveur. Le Client s'abonne aux evenements du serveur. Pour cela, il y a un Listener entre les deux. Il a fallu que je met le InitialiseLifeTime dans la classe du listener. Car lorsque j'abonne le listener aux evenements du serveur (le clients est abonné aux evenements du listener...) il y a en fait une création d'un SAO on dirait, mais on a pas le controle dessus et celui ci base son lifeTime sur celui du listener (alors que le listener est instancié par le client avec un joli petit new() ).

    Merci !

  7. #7
    Membre à l'essai
    Profil pro
    Consultant IT
    Inscrit en
    Octobre 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Consultant IT

    Informations forums :
    Inscription : Octobre 2006
    Messages : 29
    Points : 17
    Points
    17
    Par défaut merci
    Je voulais juste vous remercier pour ce post car il m'a bien aidé .
    J'ai rencontré le même problème et je ne trouvais pas de solutions pour y remédier.
    Je pense que ce serait intéressant de parler de ce problème dans le tutoriel suivant : http://vincentlaine.developpez.com/t...domain/csharp/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Help!! Probleme avec les dates sur SQL SERVER
    Par Nadaa dans le forum MS SQL Server
    Réponses: 16
    Dernier message: 03/08/2006, 16h55
  2. PROBLEME AVEC LES REQUETES IS NULL / NOT EXISTS
    Par sylvaine dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/06/2004, 13h26
  3. [langage] probleme avec les listes dans des listes
    Par pqmoltonel dans le forum Langage
    Réponses: 7
    Dernier message: 27/04/2004, 12h32
  4. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/08/2003, 22h50
  5. probleme avec les processus
    Par saidi dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/02/2003, 00h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo