gpt4 book ai didi

android - android应用程序的cpu利用率

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:36:36 24 4
gpt4 key购买 nike

现在假设手机中有 2 个或 4 个内核。如何有效地转储应用程序使用的 % cpu。我在 google 上搜索了一些 top 命令的示例,但我不确定如何使用 top 命令的数字来显示多核和过去 10 秒内的 cpu 利用率。

我添加了以下代码:但我总是在 buf 中得到 null。 exec 使用 ls 命令返回有效结果,但使用 top 无效。我是否需要在 mainfest 中获得一些权限才能执行 top 命令...

    String str = new String();
str = "top -l1";
Process p;
p = Runtime.getRuntime().exec(str);
BufferedReader bri = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
/* Skip 6 lines */
int count = 0;
char[] buf= new char[10240];
bri.read(buf);
Log.e("TEST", new String(buf));

最佳答案

我对top不是很熟悉,但是this question似乎表明有一种方法可以从各个核心收集数据。

无论如何,我建议您使用 Dumpsys tool相反,这更有趣,因为无论内核数量如何,它都可以为您提供 CPU 利用率。例如命令:

adb shell dumpsys cpuinfo

将给出以下形式的输出:

Load: 0.08 / 0.4 / 0.64
CPU usage from 42816ms to 34683ms ago:
system_server: 1% = 1% user + 0% kernel / faults: 16 minor
kdebuglog.sh: 0% = 0% user + 0% kernel / faults: 160 minor
tiwlan_wq: 0% = 0% user + 0% kernel
usb_mass_storag: 0% = 0% user + 0% kernel
pvr_workqueue: 0% = 0% user + 0% kernel
+sleep: 0% = 0% user + 0% kernel
+sleep: 0% = 0% user + 0% kernel
TOTAL: 6% = 1% user + 3% kernel + 0% irq

查看此 SO 答案以了解有关如何使用 Dumpsys 的更多详细信息:What's the Android ADB shell "dumpsys" tool and what are its benefits?

关于android - android应用程序的cpu利用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17008182/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com