desgard.com

SDWebImage Source Probe: Downloader

为了进行图片下载操作,通过 SDWebImageManager 这座桥梁,有效控制了图片下载的时机和同缓存的协同操作。这篇来关注一下在 SD 中,Downloader Class 的具体实现。 Downloader 中的一些枚举 在 SDWebImageDownloader.m 中,可以发现这么一个属性: @property (strong, nonatomic)...

用 isa 承载对象的类信息

Effective Objective-C 2.0 - 52 Specific Ways to Improve Your iOS and OS X Programs...

SDWebImage Source Probe: Manager

在 SDWebImage Source Probe: WebCache 一文中,通过最常用的 sd_setImageWithURL 方法,来分析源码。而在其中,对于图片的 download 方法,也是需要理解的重点之一。它用于处理异步下载和图片缓存的类,当然也可直接拿来使用。SDWebImageManager 这个类,为 WebCache 、 SDWebImageDownloader 和...

weak 弱引用的实现方式

对于 runtime 的分析还有很长的路,最近在写 block 系列的同时,也回顾一下之前疏漏的细节知识。这篇文章是关于 weak 的具体实现的学习笔记。 runtime 对 __weak 弱引用处理方式 切入主题,这里笔者使用的 runtime 版本为 objc4-680.tar.gz。...

SDWebImage Source Probe: WebCache

最近两天,在完成工作业务之余,除了看书,自己也要开始深入的阅读经典的源码。来完善我的 iOS 源码探求 系列文章。 对源码的阅读是一个长久的学习过程,我会将业务中最常用的一些经典三方库拿出来进行学习。这一点我很敬佩 @Draveness 的精神,并向他看齐。 SDWebImage 简单介绍 SDWebImage 根据官方文档,其实就是提供了以下功能: Asynchronous image downloader with...

浅谈 block(2) - 截获变量方式

本文会通过 clang 的 -rewrite-objc 选项来分析 block 的 C 转换源代码。其分析方式在该系列上一篇有详细介绍。请先阅读 浅谈 block(1) - clang 改写后的 block...