2010-05-27 4 views
0

J'ai un minuteur dans mon service Windows qui est construit en C# 2.0. Nous sommes en train de concevoir la gestion des exceptions. Puisque c'est Timer s'exécute sur son propre thread, nous aimerions gérer l'exception de mémoire insuffisante. Lorsque cela se produit, nous aimerions arrêter le service. Comment pouvons-nous arrêter doucement le service quand cela arrive sur le fil différent?Exception de mémoire insuffisante - Arrêt du service Windows

+0

Êtes-vous déjà en train de surcharger l'événement onStop et de l'appeler? Vous pouvez intercepter l'exception et appeler votre événement d'arrêt qui va nettoyer, puis appeler Environment.Exit(). Vous pouvez attendre les discussions si vous en avez besoin. – Brandi

Répondre

0

Utilisez l'API du gestionnaire de contrôle de service pour envoyer à votre propre service une commande "stop"? Cela permettrait à votre fonctionnalité standard pour gérer cette commande d'être appelée.

1

OutOfMemoryException n'est jamais censé être "traité" par votre application. Vous devriez commencer à dépanner s'il y a une fuite de mémoire immédiatement et résoudre les fuites.

Questions connexes