Android为多核设备读取状态的CPU时间

我试图让我的应用程序显示每个频率的CPU花费的时间。 主要的问题是当CPU脱机(由于热插拔或深度睡眠),文件/CPUN/cpufreq/stats/time_in_state被移除,时间重置为全0。

所以这限制了我只能在CPU 0上显示时间。

我所试过的

  • 使用FileObserver服务来监视文件的创build/删除这应该在理论上工作,但是无论什么原因,当设备进入深度睡眠时,它不能报告删除这些文件。 在唤醒时相同,必须在FileObserver能够恢复监视之前创build文件。

因此,如果没有唤醒锁,是否有可能从离线的CPU监视时间,清除time_in_state文件?