Mon service Windows utilise un thread (pas un temporisateur) qui est toujours en boucle et dort pendant 1 seconde chaque boucle en utilisant: evet.WaitOne (intervalle); Lorsque je démarre le service, cela fonctionne très bien et je peux voir dans le gestionnaire de tâches qu'il fonctionne, consomme et libère de la mémoire, utilise un processeur ... etc c'est normal, mais après un certain temps (quantité aléatoire de temps) le service s'arrête tout simplement !! il est toujours là dans le gestionnaire de tâches mais il ne consomme aucun travail de processeur maintenant et sa consommation à la mémoire ne change pas. tout simplement (mort mais toujours là dans le gestionnaire de tâches comme un zombie).Windows Service soudainement ne rien faire
Je sais que de nombreuses exceptions peuvent se produire lors de l'exécution du service (il fait vraiment beaucoup de choses) mais toutes ces exceptions sont gérées dans les blocs Try catch, alors pourquoi mon thread s'arrête-t-il? Ce thread se connecte également chaque fois qu'il boucle, quand il est freezig de cette façon il ne se connecte rien (bien sûr)
Peut-être que vous pouvez résumer les tâches que votre service est en train de faire. Accès au réseau, accès au disque, accès au disque réseau, etc ... Si vous utilisez un 'FileSystemWatcher', cela pourrait être la cause (re-init dans' OnError') – Scoregraphic
Avez-vous essayé de vérifier les journaux d'événements? – Shoban
Merci, j'ai vérifié le journal des événements, il y a une erreur de quelque chose appelé: .NET 2.0 erreur d'exécution rapportant quelque chose comme ceci: Source de l'événement: .NET Runtime 2.0 Error Reporting Catégorie d'événement: Aucun L'ID d'événement: 1000 Je ne peux pas déboguer cela parce que je ne peux pas attendre exactement quand cela se produira, il pourrait arriver après 2 minutes ou 2 jours J'ai cherché cette erreur et j'ai eu beaucoup de réponses différentes sur le Web, mais aucun d'entre eux ne semble lié à mon problème actuel –