我们怎么知道我们的程序在CPU上有多少负载?
我试图用htop找到它。但是htop不会给cpu负载。它实际上给出了我的程序的cpu利用率百分比(使用pid)。
我正在使用C编程,Linux环境。
答案 0 :(得分:2)
您可能正在寻找的功能是getrusage
。它填充struct rusage
。您感兴趣的结构有两个成员:
ru_utime
- 使用的用户CPU时间ru_stime
- 使用的系统CPU时间您可以定期调用该功能,并根据结果估算 您自己的流程的cpu负载(例如百分比)。
如果你想在系统级别获得它,那么你需要阅读(和解析) / proc / stat 文件(也是定期),请参阅here。