我运行在linux 4.1上 我有一个用户模式应用程序。 在该应用程序中,我想找出哪些线程必须在 CPU 上运行,每个线程必须在 CPU 上运行多长时间,以及我感兴趣的线程休眠了多长时间。
但是我想在程序中的 2 个特定点之间执行此操作。
例如,C++ 程序如下所示:
main()
{
<start 26 threads>
A();
.....
.....
......
B();
}
我有A()和B()的代码。
所以我想知道有多少线程在 A 和 B 之间获得了 CPU 时间,以及 A 和 B 之间主线程休眠/等待的时间。
并且这台机器上还有 1 个 CPU。
我建议尝试使用 valgrind
进行分析