Pro Multithreading and Memory Management for iOS and OS X
多线程开发里的内存问题,一直挺容易让人头大的。ARC 出来后,确实让少操不少心,代码清爽,bug 也少。
苹果从 iOS 5 和 OS X Lion 开始搞的 自动引用计数(ARC),基本把原来那套手动 retain
、release
的流程自动化了。你只管写逻辑,内存回收的事交给编译器搞定,省事。
但要玩得溜,还是得懂点底层,像以前的 alloc
、dealloc
、autorelease
这些老招,还是会在老项目或某些场景下碰到,懂一点没坏处。
GCD 就更常用了,异步并发基本靠它。创建个 dispatch_queue_t
,往里丢个 dispatch_async
就能跑起来,响应也快,代码也简单。适合网络求、图片这类耗时操作。
顺带一提,Block 也别忽视,写回调、封装逻辑都顺手,还能捕获上下文变量。配合 GCD,用起来更香,比如写个批量任务或者动画执行,省代码。
如果你还在摸索怎么把 ARC、GCD 和 Block 用得更舒服,不妨翻翻这篇文章。讲得挺细,例子也接地气,刚入门或者查漏补缺都挺合适的。
额外推荐几个相关资料,配着看效果更好:GCD 多线程并发开发、Block 与 GCD 应用实例。
如果你正准备优化老项目或者提升新项目性能,建议从 ARC 的细节入手,GCD 和 Block 的配合用得溜,基本就能把性能和代码整洁度都提上去。
5.63MB
文件大小:
评论区