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

Web & réseau Delphi Discussion :

Comment éviter les exceptions "Connection Closed Gracefully." avec IdTCPServer ?


Sujet :

Web & réseau Delphi

  1. #1
    Membre éprouvé
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Octobre 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Paramétreur de progiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 970
    Par défaut Comment éviter les exceptions "Connection Closed Gracefully." avec IdTCPServer ?
    Bonjour,

    J'utilise le composant IdTCPServer mais celui-ci me génère des exceptions : "Connection Closed Gracefully." quand il y a un grand nombre de connexions simultanées.

    En effet, mon serveur reçoit de 10 à 20 connexions simultanées sur un temps très court.

    La propriété MaxConnections est à 0.

    J'utilise également un composant IdAntiFreeze.

    Savez-vous comment puis-je faire pour corriger ce problème d'exception ?

    Merci,
    ZiP

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 912
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 912
    Par défaut
    Ce n'est pas une erreur . Le message dit simplement que la connection c'est terminée proprement. En utilisation normale (hors IDE), il ne devrait pas apparaître. Dans l'IDE, sous Options/Exceptions du language, tu peux décocher "Exceptions silencieuses Indy".

    Si il devait tout de même apparaître au runtime, tu peux tester (et ignorer) les exceptions descendentes de EIdSilentException.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Octobre 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Paramétreur de progiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 970
    Par défaut
    Bonjour,

    C'est effectivement hors IDE que j'ai cette exception via le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    procedure TMain.IdTCPServer1Exception(AContext: TIdContext;
      AException: Exception);
    begin
         Log('Exception : ' + AContext.ToString + ' ' + AException.ToString);
    end;
    C'est donc normal

    Cependant, je n'ai pas ce message avec toutes les connections...

    Comment puis-je faire pour savoir si l'exception est de type EIdSilentException et enregistrer toutes les exceptions sauf ce type ?

    Merci,
    ZiP

  4. #4
    Membre éprouvé
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Octobre 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Paramétreur de progiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 970
    Par défaut
    J'ai modifié mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    procedure TMain.IdTCPServer1Exception(AContext: TIdContext;
      AException: Exception);
    begin
         if not (AException is EIdSilentException ) then
         begin
              Log('Exception : ' + AContext.ToString + ' ' + AException.ToString);
         end;
    end;
    C'est normalement bon !

    ZiP

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/01/2013, 23h11
  2. [C#/SQL] Comment gérer les exceptions d'une Procédure stockée ?
    Par thomas_strass dans le forum Accès aux données
    Réponses: 10
    Dernier message: 06/07/2005, 10h40
  3. Réponses: 3
    Dernier message: 05/07/2005, 18h07
  4. [Exception]Comment gérer les exceptions ?
    Par Gildas Huart dans le forum Général Java
    Réponses: 7
    Dernier message: 29/03/2005, 18h01
  5. Comment éviter les doublons dans ma table
    Par einegel dans le forum Bases de données
    Réponses: 3
    Dernier message: 09/11/2004, 12h18

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