1 c++ debugging logging multithreading diagnostics
我打算在我的软件中添加广泛的诊断功能.现在我正在考虑如何做到这一点的总体策略,因为简单地添加这样的代码会导致严重的混乱.
你有这方面的经验吗?
我想要监控:
我的软件是类似处理的工具,通常像其他处理或计算工具一样工作,例如lame mp3编码器.这就是为什么这样的整体统计收获确实对我有意义.
我目前正计划为每个要监视创建/破坏的对象添加基类.基类将在其构造函数和析构函数中记录正确的信息.还能做些什么?
class LifeCycleProbe {
char * name;
LifeCycleProbe(char * _name) : name(_name) {
some::important::object.created(_name);
}
~LifeCycleProbe() {
some::important::object.destroyed(_name);
}
}
class MonitorMe : private LifeCycleProbe {
MonitorMe() : LifeCycleProbe("MonitorMe") {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
我能想到的第一件事是你可以很好地利用一个单独的分析工具.这也将消除改变源代码以允许它的需要.
我可以推荐的工具:
这些工具可以轻松帮助您找到所有问题的答案.
| 归档时间: |
|
| 查看次数: |
549 次 |
| 最近记录: |