什么?
我正在开发,需要保持一个控制台应用程序运行24/7 不管什么
有什么办法从一些未处理的异常在“一些线索某处”发生越来越炸毁停止多线程应用程序?
即使发生未处理的异常,也要保持应用程序正常运行
为什么?
请避免提供像“你应该管理你的所有异常”,“这应该永远不会发生”等课程。我有我的理由:我们在测试部署,我们需要保持这种运行,记录异常,并重新启动所有再次线程。如果任何计划外的发生并导致未处理的异常被抛出,它需要被检测和一些所谓的方法重新启动所有线程(原子性是不可能的,因为由于该层设计)
这是说,我知道如果由于和UnhandledException(我已经实现)而导致应用程序崩溃,则可能无法从“内部”重新启动应用程序。
到目前为止,我已经使用Quartz.net的FileScan作业和标志文件来检测这样的东西,并从外部重新启动应用程序。但这听起来对我来说很难受。我想找到更干净,更快捷,更肮脏的东西。
停止投票/狙击警告:我知道这可能不可能“按原样”。
请创造性/有益的而不是突然的批评,并认为这更多的是一个“开放式问题”
所以...你为你的“开放式问题”添加一个“downvote”警告,然后downvote每个人试图帮助你。尼斯... – 2012-01-11 17:28:11
@EthanCabiac对不起,你的回答“不是真的”是我首先评论的原因。在编辑之后,这是不同的。我会将其标记为答案,因为这是我自己贴出的答案给自己的选择。让我们来和平:) – 2012-01-11 22:45:58