mirror of
https://github.com/NohamR/knowledge-kit.git
synced 2026-05-24 20:00:37 +00:00
950 B
950 B
YYImage 框架原理,探索图片高效加载原理
图片显示流程
UIImage *image = [UIImage imageNamed:@"test"];
_imageView.image = image;
上述的代码叫做“隐形解码”。 代码测试一张图片从磁盘读取到内存中,通过 Instrucments 中的 Time Profiler 分析得到,从磁盘调用 ImageIO 中方法加载到内存中,这个过程比较耗时。
图片大,则需要更大的空间去将 Data Buffer 计算得到 Image Buffer
所以将图片解码过程,放到异步线程中去。
YYImage 源码
很多框架使用锁都是 pthread_mutex_lock,分析原因
pthread_mutex_lock
pthread_mutex_unlock

