Swift 编译优化(2) - 耗时统计

Swift 编译优化的系列文章:

Swift 编译优化(1) - 编译过程

Swift 编译优化(2) - 耗时统计

Swift 编译优化(3) - 编译配置

Swift 编译优化(4) - 代码优化

编译衡量标准

进行编译优化前,我们需要对速度有一个衡量标准:准确获得构建用时。

先定义要衡量和优化的内容。 有两种选择:

  • Clean Build(全量构建): 从头开始完整构建项目
  • Incremental build(增量构建): 修改部分源代码后重新构建项目

查看编译耗时项

查看总编译耗时

可以通过这个方式查看编译总耗时

使用 BuildTimeAnalyer-for-Xcode

使用Github上的插件工具BuildTimeAnalyer-for-Xcode,可以显示每个文件的编译时间,耗时所在的方法,多少行。

按照要求完成配置

  1. 确保将标志(-Xfrontend-debug-time-function-bodies)添加到目标的构建设置中
  2. Clean 项目
  3. 构建项目,并等待它完成

看统计的数据

页面上信息:

  1. 编译耗时,毫秒为单位。
  2. 文件位置
  3. 出现次数
  4. 调用的方法
  5. 双击可以直接定位到代码位置。

如何在项目中查找编译耗时项?

在 xcode => build settings => Other Swift Flags 添加下面设置, 数值 100 的单位是毫秒,超过这个值,就会给出警告,当然你可以可以根据自身情况修改该值。

ini 复制代码
 -Xfrontend -warn-long-function-bodies=100 
 ​
 -Xfrontend -warn-long-expression-type-checking=100

如果编译耗时超过设置的最大值,将通过警告的方式提示你。

相关推荐
2501_916007474 小时前
抓包工具功能对比,TraceEagle、Charles、Fiddler、Wireshark、mitmproxy 差别
前端·网络协议·ios·adb·https·fiddler·wireshark
青峰讲运维7 小时前
OpenStack 存储深度解析|Cinder 块存储 + Swift 对象存储原理与完整实操(Yoga)
开发语言·openstack·swift
2501_915106328 小时前
Windows 上开发 Unity iOS,使用 KXBuild 进行真机调试、性能采样与打包 ipa
windows·vscode·unity·ios·个人开发·swift·敏捷流程
柚鸥ASO优化10 小时前
iOS 27.2 更新后,App Store 广告展示逻辑出现新变化
ios
美狐美颜SDK开放平台11 小时前
视频美颜SDK如何应对快速转头与大幅度面部动作?
android·人工智能·ios·音视频·直播美颜sdk·视频美颜sdk
茶底世界之下12 小时前
秋叶已经够黄了:用 Awaking 单独收一点黄色
ios
Jewel10512 小时前
文字为什么总是不居中!记录一个bug
android·flutter·ios
老李IT笔记13 小时前
抹除和升系统可以合成一条命令了:强制更新夹在抹除里怎么用,什么情况下不该用
ios·智能手机
zhongben123_1 天前
从零开发一个打车APP:技术选型、系统架构与成本评估指南
大数据·运维·ios·系统架构·uni-app·web app
茶底世界之下1 天前
人像清晰度加多少?用 Awaking 对照皮肤与发丝
ios