我有一个使用动态链接库library.so
的示例应用程序。我用top命令测量示例应用程序的CPU使用情况。但它显示了示例应用程序和library.so
每秒的CPU使用情况。但我只想看看library.so
的CPU使用情况。有办法这样做吗?我听说它可以通过htop实现,但不知道如何实现。我使用了树视图,但它显示了几个流程作为示例应用程序流程。我不明白哪一个是library.so
。我使用的是centos 5.11。内核版本3.2.63-1.el5.elrepo.
如果库被视为程序的一部分,一种方法是在代码中实现度量。下面的最小示例是在C++11上实现的,它只运行假设库中的一个函数:
#include <chrono>
#include <iostream>
#include <hypothetical>
int main() {
using namespace std::chrono;
system_clock systemClock;
system_clock::time_point startingTime{systemClock.now()};
hypothetical::function();
system_clock::duration libraryTime{systemClock.now() - startingTime};
std::cout << "Hypothetical library took " << duration_cast<seconds>(libraryTime).count() << " seconds to run.n";
return 0;
}
您需要将其扩展到程序从库中调用的所有函数。