我们正在开发一款几乎没有错误的视频游戏,就像任何应用程序一样,存在有时会导致严重崩溃的错误。不幸的是,由于我们使用的是闭源中间件(Unity 3D),到目前为止,我们记录的许多崩溃都超出了我们的控制范围,无法解决或解决它们。
虽然我们可以希望并等待中间件开发人员解决问题,但我们希望看看是否有可能至少使崩溃信息更丰富且用户友好。例如 - 我们的用户可能遇到的罕见崩溃之一是某些 AV 产品会导致某种线程上下文竞争条件并导致游戏崩溃。我们希望能够检测崩溃和错误签名,并向用户提供指向我们的 wiki 或论坛的链接,了解如何解决该问题(如果可能)。
是否可以编写一个轻量级看门狗进程或父进程来响应 Windows 平台上的崩溃事件?
最佳答案
在崩溃进程之外收集故障转储至关重要。您永远不知道未处理的异常处理程序是否受到影响。但还有其他选择:
- 启用 WER LocalDumps并为存储转储的目录编写一个看门狗(FileSystemWatcher)。
- 配置AeDebug并在崩溃时附加您自己的调试器。
关于c# - 是否可以编写一个看门狗进程来捕获应用程序崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27754074/