商务网站建设兴田德润电话多少,wordpress缓存规则,WordPress商用收费吗,兰州装修公司排名前十1、 监测卡顿的方式 a、Xcode 层级关系是否有异常 b、 instruments 的Animation Hitch工具检测#xff1a;碰到问题#xff0c;录制完了无数据#xff08;用iphone7录制有数据的#xff0c;iphne14录制无数据#xff1f;#xff09;
2、可能导致的卡顿的原因 a、 直播广…1、 监测卡顿的方式 a、Xcode 层级关系是否有异常 b、 instruments 的Animation Hitch工具检测碰到问题录制完了无数据用iphone7录制有数据的iphne14录制无数据
2、可能导致的卡顿的原因 a、 直播广场列表一直往下刷新内存会爆掉可能存在内存泄漏需要进一步看看 1、 可以用内存工具检测看看有没有异常 2、 看代码里有没有循环引用结合撒伽师兄那天给的日志 b、 cell上的lottie动画可能导致卡顿 c、 进一步看看还有没有其他可能导致卡顿的代码 1、 阴影、圆角设置的方式 2、 离屏渲染的问题 3、 光栅化设置 4、 图片缓存占用太多内存 5、 图片是否还有压缩的空间 6、 cell上有大量的removeFromSuperView可能导致卡顿代码可以优化是为了避免数据重复在prepareForReuse里使用可以换成在这里刷新数据 d、 检查是否有线程不合理问题 1、 主线程耗时任务比如调用UIGraphicsGetCurrentContext等接口在 CPU 上进行绘制计算 2、 主线程等待繁忙的子线程或低优先级的后台线程任务而导致阻塞 3、 主线程等待系统资源比如使用Data(contentsOf:)进行 IO 读取等
问题记录 1、preview类型数据没有自测过记得mock数据自测 2、有recommend的数据也没自测过
待解决的问题 1、找到检测卡顿的工具 —— instruments的animation hitch可以录制了
新发现 1、同一父视图重复调用addSubviews添加同一个View并不会产生多层级
重构心得 1、 抓住主要问题先重构大量removeFromSuperView问题 2、 从最上层开始重构重构玩一个单元进行一次自测 3、 从关键方法入手分析
后记
卡顿分析相关参考文档
Instruments性能检测 https://www.jianshu.com/p/9e94e42cfb01
Animation Hitch https://www.jianshu.com/p/158a8497fe1c https://juejin.cn/post/7231731488928399415 https://zhuanlan.zhihu.com/p/428971055?utm_id0
iOS卡顿检测 https://www.jianshu.com/p/ee62bbf38559
UICollectionView复用 https://www.jianshu.com/p/5d817ea3565d https://www.jianshu.com/p/e55178fd1e7f
dispatch_sync_on_main_queue https://www.jianshu.com/p/b3227582037d