2011-07-22 36 views
1

我正在尋找一種方法來獲取CPU使用率數字,如使用C/C++/Obj-C的樂器和活動監視器,以便我可以使用它進行一些自動化測試。我正在尋找大約1秒的粒度,儘管100毫秒是理想的。查看這個問題的另一種方法是「活動監視器如何獲取它獲取的信息?」。在iOS中,如何從正在運行的應用程序中獲取當前的CPU利用率?

這是我迄今發現:

尼克斯當量似乎
  • 許多*的不與iOS工作
    • sysctl 沒有KERN_CPTIME
    • 的iOS沒有按」沒有proc文件系統,所以我不能使用 /proc/stat。
      • 這消除了大量的如vmstat程序和iostat
  • 的MacOSX的 sample 不存在的iOS。

回答

-1

你不能。標準的Un * x訪問此信息不適用於iOS應用程序。

+0

我同意標準* nix訪問方式不可用,但Activity Monitor和Instruments如何獲取信息?它可能是一個無證或有限的API,但我希望有一些公開的API可以做到這一點。 – Brian

1

我找到了答案。有一個未公開的API,帶有PROCESSOR_CPU_LOAD_INFO風格的host_processor_info(),可以爲您提供系統,用戶,nice和空閒tick的數量。您必須減去先前調用的滴答數以獲取當前的CPU利用率。記得在你得到的數組上調用vm_deallocate。

相關問題