Programme qui plante sans savoir pourquoi [Résolu]

Messages postés
92
Date d'inscription
mercredi 5 juillet 2006
Dernière intervention
5 août 2009
- - Dernière réponse : cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
- 24 févr. 2007 à 10:18
Salut,
Je dois reparer un programme qui se charge de faire des enregistrements de videos surveillance.
Ce programme marche tres bien dans le fonc mais il faut quil reste allume 24h/24.Seulement au bout d'un moment il plante, l'interface bloque et je ne peut le fermer que grace au Gestionnaire des taches.
Je ne pense pas que ca soit un pb de memoire, j'ai donc fait plusieurs enregistrements en plusieurs jours du gestionnaire des taches afin de voir le comportement de ce programme.
J'ai deceler qqs bizareries:
    - j'ai remarque que les Handles augmentaient considerablement d'un jour a l'autre, en 3 jours ils ont plus que triples(de 7000 a 24000 environ), 
   - ObjectUsers est passe de ~270 a ~530,
   - Util Max Memoire a aussi augmente ainsi que la memoire virtuelle
Est ce que c'est normal?
Sinon qu'est ce que je dois faire?
sandra
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
3
Merci
Salut,

A ce niveau là tu n'as plus qu'à entammer une revue de code pour déterminer ce que tu gardes ouvert pour rien, on ne peut pas te donner de raison précise avec si peu d'éléments.
Avant celà tu peux tenter de vérifier quels sont les handles qui ne sont jamais fermés, via Process Explorer notamment.

Par contre si le logiciel est destiné à enregistrer les vidéos, je m'interogge sur l'utilité d'une application basée sur un GUI pour effectuer cette tâche.

/*
coq
MVP Visual C#
CoqBlog
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_coq
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
3
Merci
Ctrl+H pour afficher la liste des Handles du processus sélectionné.

/*
coq
MVP Visual C#
CoqBlog
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de cs_coq
Messages postés
92
Date d'inscription
mercredi 5 juillet 2006
Dernière intervention
5 août 2009
0
Merci
Salut Coq,
en fait on en a besoin pour pouvoir visualiser les cameras videos en temps reel.
Je me pose une question, les enregistrements se font dans des dossiers nommes selon les clients. ces dossiers se trouvent dans le bin de l'appli, serait-ce pour ca que le nombre de handle ne fait que augmenter?
En attendant ton avis je vais suivre ton conseil.
Merci de ta reponse

sandra
Commenter la réponse de sandra26
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Dernière intervention
2 août 2014
0
Merci
Déjà utiliser le répertoire de l'application est presque suicidaire, dû aux restrictions d'accès qui y sont en général appliquées pour un compte standard, notamment en écriture.

Ensuite effectivement ça pourrait venir de handles sur fichier ouverts et jamais fermés, soit côté .NET un objet Stream (& co) ouvert mais jamais fermé, et ne se trouvant jamais libérable par le GC.
Ca peut aussi venir d'un accès au registre etc etc
Mais ça peut venir de n'importe quoi d'autre : controle graphique etc, bref tout ce qui implique l'ouverture d'un handle.
Ensuite si tu affiches les vidéos je suppose que tu passes par un contrôle existant pour celà, du type WMP & co
Donc il faut déjà que tu identifies ce qui pourrait clocher pour cibler ta revue, sinon elle devra être totale.

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq
Messages postés
92
Date d'inscription
mercredi 5 juillet 2006
Dernière intervention
5 août 2009
0
Merci
Salut, j'ai donc suivi ton conseil et telecharge Process Explorer mais je ne trouve pas comment verifier les handlesqui ne sont jamais fermes.
Peut tu m'en dire un peu plus ou bien me diriger vers de la doc stp?

sandra
Commenter la réponse de sandra26

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.