Android Studio自带Profiler工具进行CPU资源及线程问题分析步骤

news/2024/11/14 6:01:10/

1、运行需要检测CPU资源问题与线程问题的程序

这里以“com.example.opengltest”程序为例。

2、点击Profiler按钮

3、点击SESIONS "+"号按钮选择设备,选择对应设备下的应用或进程

4、双击CPU区块

5、选择Trace config选项,选择“Java/Kotlin Method Sample...”选项,以下为图示及相关介绍:

在 Android Studio Profiler 中,CPU 分析中的 Trace Config 是用于配置你要收集的性能数据的设置。通过 Trace Config,你可以指定要采集的事件、采集的持续时间、采集的频率等内容。

常见的 Trace Config 设置包括以下一些参数:

  1. Sampling Interval(采样间隔):指定每次采样的时间间隔。较小的采样间隔能提供更精细的数据,但可能会增加性能开销。

  2. Method Tracing(方法追踪):允许你启用或禁用对应用程序方法的追踪,以便查看哪些方法消耗了 CPU 时间。

  3. Native Method Tracing(本地方法追踪):允许你开启或关闭追踪应用程序中的本地方法调用。

  4. Thread Information(线程信息):可以配置是否要包含线程信息在内的数据。

  5. Advanced Settings(高级设置):在一些 Profiler 中,还可以找到更详细的高级设置,用于微调 Trace Config。

通过调整 Trace Config 的设置,你可以更精确地定位性能问题并收集你关心的数据。选择合适的 Trace Config 对于深入分析性能问题非常重要。

可以点击编辑配置,如图,但我这里不能配置不知为何,欢迎留言交流:

6、点击“Record”按钮开始记录追踪数据,

点击“Stop”按钮结束记录追踪数据。

自动进入CPU所有线程的分析界面

 7、双击颜色有异常的对应线程名,选择“Top Down”可以轻松看到什么线程,什么函数体的CPU总占用时间、占用比。

8、根据函数体名和总时间占用时长等信息可以轻松的知道是哪个模块、哪个线程、哪个函数导致的资源问题(哪怕不知道是哪个线程名的线程,在这里就一目了然了),譬如这几个奇怪的线程名和线程

8、写在最后:此分析工具的分析方法可以有效解决CPU占用较高、频繁GC、任务线程或界面卡顿等问题,实践后觉得比较有效,所以分享出来。

这个工具还在学习使用中,欢饮大家留言更正错误,提出建议,谢谢!


http://www.ppmy.cn/news/1463502.html

相关文章

Vue3实战笔记(36)—粒子特效完成炫酷的404

文章目录 前言404特效总结 前言 昨天介绍了一个粒子特效小例子&#xff0c;不够直观&#xff0c;下面直接实战在自己的项目中实现一个好玩滴。 404特效 更改之前创建好的404.vue: <template><div class"container"><vue-particles id"tspartic…

2024年【山东省安全员C证】考试及山东省安全员C证报名考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年【山东省安全员C证】考试及山东省安全员C证报名考试&#xff0c;包含山东省安全员C证考试答案和解析及山东省安全员C证报名考试练习。安全生产模拟考试一点通结合国家山东省安全员C证考试最新大纲及山东省安全员…

【程序员如何送外卖】

嘿&#xff0c;咱程序员要在美团送外卖&#xff0c;那还真有一番说道呢。 先说说优势哈&#xff0c;咱程序员那逻辑思维可不是盖的&#xff0c;规划送餐路线什么的&#xff0c;简直小菜一碟。就像敲代码找最优解一样&#xff0c;能迅速算出怎么送最省时间最有效率。而且咱平时…

Cocos Creator 声音播放与管理详解

Cocos Creator 是一款非常流行的游戏开发引擎&#xff0c;它提供了丰富的功能和工具&#xff0c;让开发者可以轻松构建出高质量的游戏。在游戏开发中&#xff0c;声音是一个非常重要的元素&#xff0c;可以为游戏增添氛围和趣味性。在本文中&#xff0c;我们将详细介绍Cocos Cr…

虹科Pico汽车示波器 | 免拆诊断案例 | 2017款奔驰E300L车行驶中发动机偶尔无法加速

故障现象 一辆2017款奔驰E300L车&#xff0c;搭载274 920发动机&#xff0c;累计行驶里程约为21万km。车主反映&#xff0c;该车行驶中发动机偶尔无法加速&#xff0c;且车辆发闯。 故障诊断 用故障检测仪检测&#xff0c;发动机控制单元&#xff08;N3/10&#xff09;中存储…

专业渗透测试 Phpsploit-Framework(PSF)框架软件小白入门教程(八)

本系列课程&#xff0c;将重点讲解Phpsploit-Framework框架软件的基础使用&#xff01; 本文章仅提供学习&#xff0c;切勿将其用于不法手段&#xff01; 继续接上一篇文章内容&#xff0c;讲述如何进行Phpsploit-Framework软件的基础使用和二次开发。 现在&#xff0c;我们…

51单片机-实机演示(单多个数码管)

仿真链接&#xff1a; http://t.csdnimg.cn/QAPhx 目录 一.引脚位置 二.多个显示 三 扩展 一.引脚位置 注意P00 - >A ; 这个多个的在左边,右边的A到B是控制最右边那个单个的. 接下来上显示单个的代码 #include <reg52.h> #include <intrins.h> #define u…

基于redis的分布式锁解决token续期冲突的问题

场景&#xff1a;用户登录状态存储到redis&#xff0c;2小时后过期。在过期前的30分钟如果用户进行操作&#xff0c;则对登录状态进行续期&#xff0c;续期后仍有2小时时限&#xff0c;并更换新的token。在微服务模式下&#xff0c;如果两个服务同时请求续期&#xff0c;则会返…