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 :

Thread : Exception


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par défaut Thread : Exception
    Salut tout le monde !

    J'ai cette exception qui se lance sur un thread :

    System.IO.IOException: Le délai de temporisation de sémaphore a expiré.


    Pour info, je lance un thread que j'interromp après traitement par un sleep, et je le remet en route pour boucler à nouveau sur un nouveau traitement.
    En gros mon programme tourne en boucle tte la journée gràce à ca.

    Voici un exemple de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    while (Thread.CurrentThread.IsAlive)
    {
     -----traitement----
     /* Mise en attente du thread via un timeout paramétrable ---> params.xml   temps en millisecondes */
    Thread.Sleep(Int32.Parse(myThreadSection["TimeOut"].ToString()));
    }

    Cette exception apparaît au bout de quelques heures de traitement, donc je ne sais pas trop pourquoi...

    merci

  2. #2
    Membre émérite
    Avatar de dkmix
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : Jamaïque

    Informations forums :
    Inscription : Septembre 2007
    Messages : 619
    Par défaut
    bonjour,
    Rien dans les logs windows? concernant les IO (HDD, USB, ...) ?

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par défaut
    non.

    Le programme tourne sur un serveur.

  4. #4
    Membre émérite
    Avatar de dkmix
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : Jamaïque

    Informations forums :
    Inscription : Septembre 2007
    Messages : 619
    Par défaut
    Le programme tourne sur un serveur.
    Un serveur windows a aussi un observateur d’évènements. L'exception du thread doit être loggée avec quelques infos.
    il faut également regarder les avertissements et les erreurs peu de temps avant avant de l'heure à laquelle l'exception est levée.

  5. #5
    Membre éclairé
    Inscrit en
    Juin 2007
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 362
    Par défaut
    Je le sais.
    C'est justement le log de mon serveur, plus exactement celui de ma gestion des erreurs de mon application.

    Je n'ai pas touché à mon code qui fonctionnait bien depuis quelques semaines, donc j'essaie de comprendre.

    Je suppose que j'ai une erreur au niveau du sleep et du thread.isAlive mais je ne comprends pas pourquoi.

  6. #6
    Membre émérite
    Avatar de dkmix
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : Jamaïque

    Informations forums :
    Inscription : Septembre 2007
    Messages : 619
    Par défaut
    Je n'ai pas touché à mon code qui fonctionnait bien depuis quelques semaines
    Je suppose que j'ai une erreur au niveau du sleep et du thread.isAlive
    Le code fonctionnait, il ne fonctionne plus. Je ne pense pas que l'erreur viennent du sleep ou du thread.isAlive mais plutôt d'un problème d'entrée/sortie, accès disque, réseau, un fichier qui pose pb , un buffer etc ... éventuellement un pb dans les données qui sont traitées (tout dépend du traitement)

    Pour aller plus loin est-il possible de try catcher le code pour logger la pile d'appels et savoir exactement ou l'exception est levée ?

Discussions similaires

  1. Réponses: 6
    Dernier message: 02/11/2009, 13h18
  2. Réponses: 1
    Dernier message: 08/11/2008, 22h46
  3. [Thread] Exception levé
    Par GLDavid dans le forum Concurrence et multi-thread
    Réponses: 8
    Dernier message: 10/08/2006, 15h50
  4. [VB.NET 2.0] Cross-Thread Exception
    Par guillaume1998 dans le forum Windows Forms
    Réponses: 13
    Dernier message: 30/01/2006, 18h16
  5. [thread] Exception non catchée
    Par mammistegon dans le forum Concurrence et multi-thread
    Réponses: 3
    Dernier message: 22/11/2004, 21h43

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