【问题标题】:Debugging multiple exe program调试多个exe程序
【发布时间】:2015-03-25 22:40:24
【问题描述】:

我有一个项目,我需要修复该程序,该程序可能会非常不确定地崩溃。该软件执行大量计算和数据库调用,并且可能具有非常高的负载,这意味着大量的客户端。

这是一个非常关键的组件,没有它就没有任何作用。它需要执行并且能够在没有用户交互的情况下长时间运行。

它实际上是一个带有 COM 的原生 C++/ATL 项目,用于在其两个可执行文件之间进行通信。

我现在花了很多时间实际研究代码并寻找明显的代码缺陷,例如不锁定共享变量(那些显而易见的),不做任何异常的异常处理程序,除了' return false',即使这可能是一个严重的异常。

但我想知道是否有人对解决这样的项目有一些提示,许多人实际上试图解决问题并失败了,现在你已经接受了挑战并且不想失败。

我已经准备好去解决这个问题,但是我需要一些指导来了解如何以一种好的方式解决这个问题?

我的想法是先搭建一个测试环境,希望尽可能多的收集到确实发生的崩溃信息,然后通过日志、堆栈跟踪等找到崩溃的点。这可能是也可能不是调试此类项目的好方法。

感谢您的意见?

【问题讨论】:

    标签: debugging project


    【解决方案1】:

    这可能很明显,但我对此类错误修复任务的路线图是:

    1. 尽可能多地收集有关崩溃源(用户、开发人员等)的信息。
    2. 检查文档和依赖项。
    3. 检查源代码。
    4. 构建一个隔离的测试环境并尝试重现。

    如果您仍然找不到错误的来源,请尝试清理源代码并添加更详细的日志记录系统。

    问候

    【讨论】:

      【解决方案2】:

      日志,日志,日志,日志。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-19
        相关资源
        最近更新 更多