调试多个exe程序
问题描述:
我有一个项目,我需要修复这个程序,它有非常不确定的崩溃倾向。这部分软件执行大量的计算和数据库调用,并且可能有很高的负载,这意味着很多客户端。调试多个exe程序
这是一个非常关键的组件,没有它没有任何作品。它需要长时间执行并且能够在没有用户交互的情况下运行。
它实际上是一个本地的C++/ATL项目,用于COM的两个可执行文件之间的通信。
我花了很多时间研究代码,寻找明显的代码缺陷,比如不锁定共享变量(显而易见的),异常处理程序,它们不会对异常做任何事情,除此之外'return false',即使这可能是一个重要的例外。
但是我想知道是否有人在处理这样一个项目方面有一些技巧,很多人实际上已经试图解决问题并失败了,现在你已经接受了挑战并且不想要失败。
我准备好去解决这个问题了,但是我需要一些指导来说明如何以良好的方式去解决这个问题?
我的想法是首先建立一个测试环境,并希望收集尽可能多的有关发生崩溃的信息,然后通过日志记录,堆栈跟踪等找到崩溃点。这可能是也可能不是调试这样一个项目的好方法。
任何输入是赞赏?
答
这可能是显而易见的,但我对这种bugfixing任务的路线图是:
- 收集尽可能多的信息,可能在碰撞源(用户,developpers等)。
- 检查文档和依赖关系。
- 检查源代码。
- 构建一个独立的测试环境并尝试重现。
如果仍然无法找到该错误的来源,请尝试清理源代码并添加更详细的日志记录系统。
Regards
答
Log,log,log,log。