iOS 底层原理39:Instruments系列(四)App L

2022-08-30  本文已影响0人  Style_月月

iOS 底层原理 文章汇总

App Launch 是XCode 11 以后提供的检测工具, 主要是用来查看App启动过程,然后针对耗时操作进行优化,进而对启动速度进行优化。

使用

xcode13系统默认录制20s,可以长按录制按钮选择Recording Options更改录制时间

注:下面是各个阶段的介绍

  • 进程创建(Initializing) - 紫色
  • 系统初始化(Initializing - System Interface Initialization)- 紫色
  • 静态运行时的初始化(Initializing - Static Runtime Initialization)
  • UIKit初始化(Launching - UIKit Initialization)- 浅绿色
  • 启动(Launching - didFinishLaunchingWithOptions())- 深绿色
  • 第一帧渲染(Launching - Initial Frame Rendering)- 浅绿色
  • 前台运行(Forground - Active)
  • Event:Context Switch Point (查看整个启动过程中上下文切换的位置)
    Instruments_04_08.png
  • Profile(显示整个启动过程中的方法调用栈及方法耗时)
    Instruments_04_09.png
  • App Life Cycle (启动过程中的各个阶段的耗时 - 生命周期)
    Instruments_04_07.png
  • Sample(各个Cpu显示线程信息 状态 回溯)
    Instruments_04_10.png

注:线程的状态会通过右侧颜色进行标注


Instruments_04_12.png
  • 灰色(Blocked):当前线程被阻塞
  • 红色(Runnable):当前线程可以运行,即有了CPU资源就可以立即运行
  • 橙色(Preempted、Interrupted):线程被中断,CPU去执行其他优先级更高的线程
  • 蓝色(Running):线程正在执行

参考文章

# Optimizing App Launch
# Instruments App Launch 启动时间查看
# 使用Instruments - App Launch查看启动问题

上一篇 下一篇

猜你喜欢

热点阅读