Windows服务中的异常处理最佳实践?

apo*_*lka 22 c# windows-services exception-handling

我目前正在编写一个完全在后台运行的Windows服务,每天都会做一些事情.我的想法是服务应该非常稳定,所以如果出现问题,它应该不会停止,但是第二天再次尝试,当然要记录异常.你能建议我如何制作真正稳定的Windows服务吗?

我已经阅读了Scott Hanselman关于异常处理最佳实践的文章,他写道,只有少数情况下你应该吞下一个例外.我认为Windows服务是少数情况之一,但我很乐意得到一些确认.

Dr *_*bie 7

"吞咽"异常与"放弃特定任务而不停止整个过程"不同.在我们的Windows服务中,我们捕获异常,记录它们的详细信息,然后优雅地降级该任务并等待下一个任务.然后,我们可以使用日志来解决服务器仍在运行时的错误.