这篇文章概述了为什么结构化异常处理是有问题的。有没有一种方法可以在解决文章中提到的问题的同时防止服务器崩溃?
我有一个服务器软件,大约同时运行400个连接的用户。但是如果出现崩溃,所有400个用户都会受到影响。我们添加了结构化异常处理并享受了一段时间的成果,但最终不得不将其删除,因为有些崩溃会导致整个服务器挂起(这比只是让它崩溃并重新启动更糟糕)。
所以我们有以下情况:
- 使用SEH:对于大多数崩溃,只有400个用户中的1个会出现问题
- 不使用SEH:如果任何用户崩溃,所有400个用户都会受到影响。
- 但有时使用SEH:服务器挂起,所有400个用户和尝试连接的未来用户都会受到影响。