摘要: 30、有时候你可能需要用到一些Core Foundation对象(比如CFArrayRef或者CFMutableDictionaryRef),对于这些对象,编译器是不会自动管理它们的生命周期的,你需要使用CFRetain或CFRelease之类的方法来管理它们的持有情况(ownership)。 如果 阅读全文
posted @ 2016-08-18 15:00 杨淳引 阅读(322) 评论(0) 推荐(0)
摘要: 6、ARC仍然遵循MRC的内存管理方式,4个基本规则在ARC下仍然是有效的,区别只在于:MRC模式下需要手动键入retain、release等方法来遵循这些规则,ARC环境下则是编译器自动在适当位置插入retain、release等方法去遵循这些管理规则,你不再需要去调用retain、release 阅读全文
posted @ 2016-08-18 14:43 杨淳引 阅读(182) 评论(0) 推荐(0)
摘要: 1、内存管理有4个基本规则,这些规则不只是在MRC模式下有效,在ARC模式下也是同样有效的。区别只在于在MRC模式下要手动遵循这些规则,在ARC模式下编译器会自动处理。这4个基本规则如下: (1)、自己会持有自己生成的对象(You own any object you create): 使用“all 阅读全文
posted @ 2016-08-18 14:15 杨淳引 阅读(165) 评论(0) 推荐(0)
摘要: 1、最近在重读当年刚开始学习多线程时的笔记,发觉其中有一些地方还是比较容易模糊,于是整理这篇笔记记录一下。 执行方式和队列 2、队列用来存放管理要执行的任务,它分为并发队列(Concurrent Dispatch Queue)和串行队列(Serial Dispatch Queue): 并发队列:队列 阅读全文
posted @ 2016-07-10 20:26 杨淳引 阅读(248) 评论(0) 推荐(0)
摘要: 关联对象 14、使用Category对类进行拓展的时候,只能添加方法,而不适合添加属性(可以添加属性,也可以正常使用get方法和set方法,只是不会自动生成以下划线开头命名的成员变量)。 可以通过关联对象(Associated Objects)来在Category里添加一个关联对象,然后将这个对象当 阅读全文
posted @ 2016-07-07 10:52 杨淳引 阅读(138) 评论(0) 推荐(0)
摘要: 消息发送(Messaging) 8、以上便是runtime相关的一些数据结构,接下来我们回看一开始的疑问: objc_msgSend()函数在执行的过程中是如何找到对应的类,找到对应的方法实现的呢? 这就是消息发送(messaging)的处理过程了: (1)、对于上文的Class的数据结构的描述,官 阅读全文
posted @ 2016-07-06 22:28 杨淳引 阅读(191) 评论(0) 推荐(0)
摘要: 基本简介 1、根据官方文档,OC有一个特性:它会尽可能把一些决定从编译时和链接时推迟到运行时才处理,所以这门语言需要的就不只是一个编译器,它还需要一个runtime系统来处理那些已经被编译过的代码。 2、runtime有两种:legacy runtime和modern runtime,区别在于: ( 阅读全文
posted @ 2016-07-06 17:14 杨淳引 阅读(168) 评论(0) 推荐(0)
摘要: 1、什么是Run Loop? (1)、Run Loop是线程的一项基础配备,它的主要作用是来让某一条线程在有任务的时候工作、没有任务的时候休眠。 (2)、线程和 Run Loop 之间的关系是一一对应的,但是并不是说新开一条线程就会自动生成这条线程对应的Run Loop,每一条线程里的Run Loo 阅读全文
posted @ 2016-05-06 14:46 杨淳引 阅读(336) 评论(0) 推荐(0)
摘要: EXC_BAD_ACCESS算是一个比较常见的错误,大部分情况下,它出现在某个对象还未初始化或已被释放后,还去试图访问这个对象的时候,即是在出现悬挂指针的时候(当然也有非悬挂指针导致的EXC_BAD_ACCESS)。在MRC机制下,EXC_BAD_ACCESS相对会出现得比较多,毕竟手动管理引用计数 阅读全文
posted @ 2016-03-29 20:15 杨淳引 阅读(372) 评论(0) 推荐(0)
摘要: 项目源码下载地址: https://github.com/ShayneYeorg/Meditashayne 1、首先一开始设计这个App的时候,我就希望它能比系统自带的备忘录更方便:比如备忘录需要手动去点击一下保存,我希望我的App可以省略掉点击保存这一步,只需要退出随笔的详情页面便可自动保存内容。 阅读全文
posted @ 2016-03-16 16:25 杨淳引 阅读(438) 评论(0) 推荐(0)