|
| Sortie brutale application |
| Débuté par dev, 19 oct. 2004 18:56 - 5 réponses |
| |
| | | |
|
| |
| Posté le 19 octobre 2004 - 18:56 |
Bonjour,
J'aimerai quelques pistes de reflexions car je coince complèment là.
Voilà, j'ai une application avec des threads qui, au bout d'un temps aléatoire (cinq minutes, une journée, quelques jours), va disparaitre comme si elle avait été "Killée".
Je gere les exceptions, une en debut de projet, l'autre dans la procedure qui sert aux threads. Quand il y a exception, j'écris dans un fichier texte les erreurs. Cela marche car quand je modifie le code et que je fait des boulettes, mon fichier est bien renseigné.
De meme, j'ajoute dans ce fichier quand je sors proprement de l'application (fenetre et sortie de projet).
Hors, quand mon application "disparait", je n'ai ni message d'erreur du traitement d'exception ni message de sortie de l'application.
Je précise que je n'utilise pas de ThreadArrete ou FinProgramme dans mon application qui pourrait justifier cet arrêt brutal.
Je n'ai pas non plus de message "erreur fatal" windows.
Je l'ai vu de mes propres yeux. L'application s'arrête toute seule.
Voila. Merci de m'avoir lu. |
| |
| |
| | | |
|
| | |
| |
| Posté le 20 octobre 2004 - 08:00 |
Salut !
On 19-Oct-2004, "Eric prudhomme" <dev@gis-informatique.com> wrote:
Bonjour,
J'aimerai quelques pistes de reflexions car je coince complèment là.
Voilà, j'ai une application avec des threads qui, au bout d'un temps aléatoire (cinq minutes, une journée, quelques jours), va disparaitre comme si elle avait été "Killée".
Je gere les exceptions, une en debut de projet, l'autre dans la procedure qui sert aux threads. Quand il y a exception, j'écris dans un fichier texte les erreurs. Cela marche car quand je modifie le code et que je fait des boulettes, mon fichier est bien renseigné.
De meme, j'ajoute dans ce fichier quand je sors proprement de l'application (fenetre et sortie de projet).
Hors, quand mon application "disparait", je n'ai ni message d'erreur du traitement d'exception ni message de sortie de l'application.
Je précise que je n'utilise pas de ThreadArrete ou FinProgramme dans mon application qui pourrait justifier cet arrêt brutal.
Je n'ai pas non plus de message "erreur fatal" windows.
Je l'ai vu de mes propres yeux. L'application s'arrête toute seule.
Voila. Merci de m'avoir lu.
Tu ne rèves pas ! J'ai le même problème chez un client où j'ai une appli qui utilise les threads ... Il y a déjà un certain temps, j'ai vu passer des messages sur ce sujet, mais aucune des pistes proposées n'a résolu mon (et ton ...) problème ... Pour tenter de résoudre le problème, je sauve tout les encodages non validés de manière à poiuvoir récupérer la situation au redémarrage de l'appli ... C'est ch... et lourd mais cela permet de survivre avec ce phénomène ... Comme le projet est en cours de revision pour passer en C/S, je m'inquiète pas trop car je n'utiliserai plus les threads dans la nouvelle version.
A+
-- Marcel Berman c/o Managing Business SPRL Allée du Petit Paris, 11 B - 1410 - Waterloo Tel : +32 2 351.60.64 Fax : +32 2 351.45.78 Gsm : +32 475.799.477 |
| |
| |
| | | |
|
| | |
| |
| Posté le 20 octobre 2004 - 13:06 |
Oui, j'a déja vu !
Utilisez-vous des timer Windev ... si oui transformez en les en TimerSys ... Ca a résolu mon problème dans mon cas.
"Eric prudhomme" <dev@gis-informatique.com> a écrit dans le message de news: 417521c8@news.pcsoft.fr...
Bonjour,
J'aimerai quelques pistes de reflexions car je coince complèment là.
Voilà, j'ai une application avec des threads qui, au bout d'un temps
aléatoire (cinq minutes, une journée, quelques jours), va disparaitre comme si elle avait été "Killée".
Je gere les exceptions, une en debut de projet, l'autre dans la procedure
qui sert aux threads. Quand il y a exception, j'écris dans un fichier texte les erreurs. Cela marche car quand je modifie le code et que je fait des boulettes, mon fichier est bien renseigné.
De meme, j'ajoute dans ce fichier quand je sors proprement de
l'application (fenetre et sortie de projet).
Hors, quand mon application "disparait", je n'ai ni message d'erreur du
traitement d'exception ni message de sortie de l'application.
Je précise que je n'utilise pas de ThreadArrete ou FinProgramme dans mon
application qui pourrait justifier cet arrêt brutal.
Je n'ai pas non plus de message "erreur fatal" windows.
Je l'ai vu de mes propres yeux. L'application s'arrête toute seule.
Voila. Merci de m'avoir lu.
|
| |
| |
| | | |
|
| | |
| |
| Posté le 20 octobre 2004 - 14:14 |
J'avais ce type de problème, il y a plus d'un an et pendant plusieurs mois, sur un logiciel de conduite d'installations industrielles (fonctionnement 24/24). Les arrêts étaient aléatoires (idem ... cinq minutes, une journée, quelques jours).
Le programme utilisait également des threads. La solution dans notre cas. INTERDICTION d'accéder aux champs des fenêtres directement depuis les threads (exemple mise à jour d'affichages, de synoptiques, ...). Il faut impérativement utiliser les messages Windows (PostMessage, Evénement, ..) avec interception et traitement par le programme principal. Depuis le programme, qui est sérieusement sollicité, fonctionne parfaitement et est d'une grande stabilité.
Bon courage. Gérard B.
"Eric prudhomme" <dev@gis-informatique.com> a écrit dans le message de news:417521c8@news.pcsoft.fr...
Bonjour,
J'aimerai quelques pistes de reflexions car je coince complèment là.
Voilà, j'ai une application avec des threads qui, au bout d'un temps
aléatoire (cinq minutes, une journée, quelques jours), va disparaitre comme si elle avait été "Killée".
Je gere les exceptions, une en debut de projet, l'autre dans la procedure
qui sert aux threads. Quand il y a exception, j'écris dans un fichier texte les erreurs. Cela marche car quand je modifie le code et que je fait des boulettes, mon fichier est bien renseigné.
De meme, j'ajoute dans ce fichier quand je sors proprement de
l'application (fenetre et sortie de projet).
Hors, quand mon application "disparait", je n'ai ni message d'erreur du
traitement d'exception ni message de sortie de l'application.
Je précise que je n'utilise pas de ThreadArrete ou FinProgramme dans mon
application qui pourrait justifier cet arrêt brutal.
Je n'ai pas non plus de message "erreur fatal" windows.
Je l'ai vu de mes propres yeux. L'application s'arrête toute seule.
Voila. Merci de m'avoir lu.
|
| |
| |
| | | |
|
| | |
| |
| Posté le 20 octobre 2004 - 17:08 |
Merci, voilà effectivement une piste à suivre.
En fouillant dans mes threads, j'ai effectivement une procedure qui rafraichit mon écran.
Je m'étais d'ailleurs posé la question au départ si je ne risquais pas des soucis analogues à l'utilisation de variables globales sans séphamore mais comme cela ne plantait pas... Au moins, j'ai ma réponse.
Bon, je vais testé ça dès aujourd'hui. Si cela marche d'ici quelques jours, je viendrais témoigner sur le forum.
Quelque soit le résultat, je te remercie car j'ai appris quelque chose aujourd'hui. |
| |
| |
| | | |
|
| | |
| |
| Posté le 08 décembre 2004 - 08:17 |
Bonjour,
J'avais exactement le problème que vous dans une appli multi-thread. En trouvant votre message, j'avais gros espoir de résoudre mon problème. J'avais en effet une table mémoire mise à jour dans la thread secondaire qui permet de visualiser les clients connectés. J'ai donc fait la modification pour éviter la manipulation de ces objets dans la thread et je suis pas passé par une zone mémoire..
Malheureusement, mon problème persiste. Les zones mémoires sont-elles également interdites dans les threads ? Avez-vous trouvé une solution pour votre problème ?
Après toutes les recherches, je ne sais plus quoi faire.
Merci de votre aide.
Patrick |
| |
| |
| | | |
|
| | | | |
| | |
|