我遇到了上层问题,并且想知道这是一个错误还是我使用gprof错了?
像往常一样,我用-pg命令编译我的C代码,然后在运行它之后我做gprof ./my_program gmon.out >> gmon.txt
。然后在输出中我注意到一个函数消耗了大量内存,然而这应该是不可能的,因为它没有做很多事情。
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls Ks/call Ks/call name
18.65 688.75 688.75 597878 0.00 0.00 visited_vertex_case
我检查了我的代码的输出,结果发现......该函数实际上从未被调用过?所以我添加了一个代码行来终止程序,如果使用这个函数,只是为了确定,是的 - 它永远不会被调用。
那么如果一个函数从未被使用过怎么能在我的gprof输出中呢?