
性能优化
文章平均质量分 63
仰望星空01
不负韶华,砥砺前行!
展开
-
iOS 优化之NSTimer
定时器的应用 说到定时器,在项目中使用最多的可能就是NSTimer了,其实除了NSTimer,在iOS开发中,我们还有许多其他的方式可用来创建定时器。通过CADisplayLink或者GCD也可以是想强大的定时器功能。 缺点: NSTimer定时器,其实不是按时间间隔进行循环调用的,实际上在定时器注册到runloop中后runloop会设置一个一个的时间点进行调用,如果错过了,则定时器并不会延时条用,而是直接等待下一个时间点调用,所以台式不精准的。 子线程要手动开启RunLoop,这样创建的NSTimer原创 2021-03-30 20:01:31 · 1150 阅读 · 0 评论 -
NSCache、NSDictionary、NSArray对比
NSCache、NSDictionary、NSArray 1.NSArray 作为一个存储对象的有序集合,可能使用最多的集合类 性能特征: 在数组的开头和结尾插入删除通常是直接操作O(1),而随机的插入和删除通常是O(n) 2.NSDictionary中的键是被拷贝的并且需要是恒定的,如果在一个键在被用于字典中放入一个值后被改变,那么这个值可能就会变得无法获取了。一个有趣的细节,在NSDictionary中键是被拷贝的,而在使用一个tool-free桥接的CFDictionary时却是被retain。Cor原创 2021-02-26 21:14:11 · 1000 阅读 · 0 评论 -
iOS开发中自旋和互斥锁的理解以及所有锁的性能比较
iOS开发中自旋和互斥锁的理解以及所有锁的性能比较 OSSpinLock,dispatch_semaphore和pthread_mutex性能最高的,苹果在新系统中已经优化了pthread_mutex的性能,所以它看上去和OSSpinLock差距没有那么大。 可以看到YYKit组件中YYCache和YYImageCoder大量使用dispatch_semaphore pthread_mutex这两个锁 OSSpinLock自旋锁(虽然已经证明不安全,优先级翻转),性能最高的锁。原理很简单,就是一直do wh原创 2021-02-26 21:11:06 · 454 阅读 · 0 评论 -
iOS性能优化之屏幕篇
屏幕成像 在屏幕成像的过程中,CPU和GPU起着至关重要的过程。 CPU(Central Processing Unit,中央处理器)负责对象的创建和销毁、对象属性的调整、布局计算、文本的计算和排版、图片的格式转换和解码、图像的绘制(Core Graphics)等 GPU(Graphics Processing Unit,图形处理器)负责渲染工作 iOS双缓冲机制,有前帧缓存、后帧缓存 什...原创 2019-09-17 16:07:51 · 564 阅读 · 0 评论 -
FPSLabel 的使用(检测tableView的流畅度)
iOS FPSLabel检测tableView的流畅度原创 2019-09-30 15:16:57 · 587 阅读 · 0 评论