首页 > 其他分享 >flutter 性能分析

flutter 性能分析

时间:2022-11-17 16:56:42浏览次数:40  
标签:分析 性能 图表 UI GPU 线程 图层 flutter

1. Flutter 的线程

平台线程

即主线程,plugin 代码运行在此线程。具体请参阅 Android 的 MainThread 以及 iOS 的 UIKit 文档。

UI 线程

UI 线程在 Dart VM 中执行 Dart 代码。当应用创建和展示场景的时候,UI 线程首先建立一个 图层树(layer tree) ,一个包含设备无关的渲染命令的轻量对象,并将图层树发送到 GPU 线程来渲染到设备上。

Raster 线程

raster 线程拿到 layer tree,并将它交给 GPU(图形处理单元)。图形库 Skia 在该线程运行,并在性能图层的最顶栏显示该线程。

I/O 线程

执行昂贵的操作(常见的有 I/O)以避免阻塞 UI 或者 raster 线程。这个线程将不会显示在 performance overlay 上。

2. 性能图表

打开 inspector 并单击 Performance Overlay 按钮即可显示性能图层。

命令行使用 P 参数切换性能图层。

定位 UI 图表

如果性能图层的 UI 图表显示红色,就要从分析 Dart VM 开始着手了,即使 GPU 图表同样显示红色。

定位 GPU 图表

检查 widget 的重建。debug 模式下可打开 stuidio 的性能工具窗口,可查看widget 的 rebuild 信息。

黄色的表示重载次数过多,灰色转圈的表示已重载,灰色不转圈的表示未重载。

标签:分析,性能,图表,UI,GPU,线程,图层,flutter
From: https://www.cnblogs.com/lemos/p/16899996.html

相关文章

  • 方差分析——双因素方差分析(R语言)
    双因素方差分析(Doublefactorvarianceanalysis)有两种类型:一个是无交互作用的双因素方差分析,它假定因素A和因素B的效应之间是相互独立的,不存在相互关系;另一个是有交互作......
  • 低门槛上手快!火山引擎 VeDI 这样满足数据分析新需求
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群近日,市场研究机构IDC发布《2022年V2全球大数据支出指南》。数据显示,2......
  • Python数据分析与应用 ---- 航空公司客户价值分析
    Python数据分析与应用----航空公司客户价值分析 Python数据分析与应用----航空公司客户价值分析_骑着蜗牛ひ追导弹'的博客-CSDN博客_航空客户数据分析......
  • 5种GaussDB ETCD服务异常实例分析处理
    摘要:一文带你细数几种ETCD服务异常实例状态。本文分享自华为云社区《【实例状态】GaussDBETCD服务异常》,作者:酷哥。首先确认是否是虚拟机、网络故障虚拟机故障导致ETC......
  • app性能测试
    1app性能测试提到APP的性能测试这个概念比较笼统,因为APP的性能测试分为服务端的性能和手机端的性能测试1.1app服务端性能测试app服务端的性能测试,利用jmeter等工具模......
  • 7-数据监控分析与基础
    一、分析过滤数据二、三、四、......
  • 方差分析——正交表(一)(R语言)
    正交试验设计(orthogonaldesign简称正交设计(orthoplan),是利用正交表(orthogonaltable)科学地安排与分析多因素试验的方法,是最常用的试验设计之一。正交表是一种特殊的表格,内......
  • Day7-5 创建对象的内存分析
    创建对象内存分析  packagecom.oop.demo03;​publicclassPet{publicStringname;publicintage;​publicvoidshout(){S......
  • 实验3:OpenFlow协议分析实践
    一、实验目的1.能够运用wireshark对OpenFlow协议数据交互过程进行抓包;2.能够借助包解析工具,分析与解释OpenFlow协议的数据包交互过程与机制。二、实验环境Ubuntu2......
  • coredump配置、产生、分析以及分析示例
    应用程序在运行过程中由于各种异常或者bug导致退出,在满足一定条件下产生一个core文件。什么是coredump?通常情况下coredmp包含了程序运行时的内存,寄存器状态,堆栈指针,内存......