J'ai écrit une assez grande application fonctionnant en arrière-plan, faisant des tâches de dôme et traitant des données.Mon application C# est en boucle, comment puis-je trouver la position dans le code?
Maintenant, le problème est que l'application fonctionne correctement depuis un certain temps. Mais quand je vérifie un jour plus tard par exemple le Backgroundworker de mon application semble boucler ou coincé. Il n'y a pas de message d'erreur et l'interface utilisateur de l'application fonctionne toujours correctement. Il arrête simplement de traiter les données.
Spécifiquement pour ce cas, j'ai ajouté un site web simple pour moi-même où le Backgroundworker signale le DateTime actuel. Donc, quand le DateTime sur le site Web est un peu à jour, je sais qu'il fonctionne bien. Mais quand c'est dans le passé, je sais que mon application est bloquée.
Le problème survient après un délai indéfini. Cela peut être 10 minutes ou 90 heures. Maintenant, pour le débogage: Est-il possible dans Visual Studio de voir où se trouve actuellement l'application? Cela rendrait le débogage beaucoup plus facile. Otherwhise je dois mettre des points d'arrêt sur la base d'essais et d'erreurs ...
Meilleures salutations,
Julian
Fixez le débogueur et appuyez sur le bouton Pause. – CodeCaster
Je n'ai pas le backgroundworker alors. J'arrive à la ligne en cours: Application.Run (new Form1()); –
Utilisez un cadre de journalisation pour enregistrer les étapes que votre application exécute à l'intérieur de la boucle. Dump dans le fichier journal également les informations sur les valeurs des variables clés utilisées dans cette boucle et qui gèrent la durée de vie et les points clés à l'intérieur de la boucle. Laissez votre application s'exécuter et, après l'heure requise, vérifiez le contenu du fichier journal. – Steve