我想测量 Momentics 中多个线程的运行时间,就像.kev
文件的 CPU 使用率视图中显示的那样。唯一的区别是,我不想看到线程在整个诊断会话中运行的时间,而是在两个自定义放置的用户事件之间。
所以我有
//Some code where multiple Threads are started/executed/interrupted and continued
TraceEvent(_NTO_TRACE_INSERTUSRSTREVENT, 101, "Start of measurement");
//Some code where multiple Threads are started/executed/interrupted and continued
TraceEvent(_NTO_TRACE_INSERTUSRSTREVENT, 102, "End of measurement");
//Some code where multiple Threads are started/executed/interrupted and continued
并希望获得所有线程的运行时间总和,但仅在两个用户事件之间的时间间隔内。
有没有办法在瞬间做到这一点?
目标是拥有一个带有运行时的 excel 文件,这里不需要自动创建,但为了澄清用例而提到。
我已经有的想法:
- 编码
- 诡计
- posix 时间测量
- 重点是,我正在开发一个庞大的系统,我无法轻松找到和修改每个线程的开始和结束
- 测量后
- 一些非常肮脏的 excel hack,它获取每个线程的运行和就绪事件并计算运行时