我在服务器上有一个进程。我的进程使用共享库,在 linux 后台运行。我在 gperftool 中使用 CPU 分析器来检查函数。步骤如下:
1.在我的应用程序中,
main ()
{
ProfilerStart("dump.txt");
...code..
ProfilerFlush();
ProfilerStop();
return 0;
}
2. CPUPROFILE_FREQUENCY=1000000 LD_LIBRARY_PATH=/usr/local/lib/libprofiler.so CPUPROFILE=dump.txt ./a.out
3. pprof --text a.out dump.txt
我检查了我在其他进程上的步骤(不使用共享库),没关系。
问题: dump.txt 文件只是保持不变的文件大小(8kb 或 9kb),尽管在 2 或 3 小时内长时间运行(应用程序收到来自客户端的消息),但无法显示输出。我认为因为我的应用程序使用了共享库,所以这里有些问题,完全不清楚这一点。
你能解释一下发生了什么吗?有什么解决办法吗?
非常感谢,