# 如何获取CPU使用率

#### 问题现象

如何分别获取系统、进程、线程的CPU使用率？

#### 解决方案

获取CPU使用率分为系统的CPU使用率、进程的CPU使用率和线程的CPU使用率三种情况。

*   获取系统的CPU资源占用情况。如当系统资源CPU占用为50%时，将返回0.5。
    
    ```
    let systemCpuUsage = hidebug.getSystemCpuUsage(); // 获取系统的CPU资源占用情况
    ```
    
*   获取进程的CPU使用率，如占用率为50%，则返回0.5。
    
    ```
    let cpuUsage: number = hidebug.getCpuUsage(); // 获取进程的CPU使用率
    ```
    
*   获取应用线程的CPU使用情况。返回当前应用进程下所有ThreadCpuUsage数组，数组中每个ThreadCpuUsage对象包含线程号和线程CPU使用率。
    
    ```
    let appThreadCpuUsage: hidebug.ThreadCpuUsage[] = hidebug.getAppThreadCpuUsage(); // 获取应用线程CPU使用情况
    let threadCpuUsage = '';
    for (let i = 0; i < appThreadCpuUsage.length; i++) {
      threadCpuUsage =
        threadCpuUsage + `threadId=${appThreadCpuUsage[i].threadId}, cpuUsage=${appThreadCpuUsage[i].cpuUsage}` +
          '\n';
    }
    ```