Oolong Tea's blog
http://yechunxiao19.github.com/-
IOS并发编程
ios的多线程管理有3种方式 NSThread & Run Loop NSOperation GCD Run Loop 首先我们说一下线程的起用和退出的问题,当我们自己创建一个线程并分配给它活干的时候,它会立刻开始给我们干活,一旦活干完了,它又没有马上找到新活,那么就会立刻退出,这个线程就结束了。注意,这里是它一旦发现自己没活可干,就会马上消失,片刻都不会停留。 这样我们就遇到一个问题 …阅读全文
-
Blocks
Blocks是C语言的新拓展,一句话来概括的话,可以理解为“anonymous functions together with automatic (local) variables.” Blocks有点像函数,但是它可以在其它函数或方法中进行声明和定义,同时它还是匿名的(匿名函数),并可以捕获其所在作用域中的变量(闭包特性)。 使用^操作符来来声明一个block变量和指示block文本的开始。B …阅读全文
-
ARC
ARC以前的生活 reference counting 在ARC以前,是手动内存管理,但不论是自动的,还是手动的内存管理,reference counting始终是内存管理的一个核心内容。 用办公室的照明管理来类比说明一下reference counting的原理。 按以下规则来安排照明灯的管理 当某人进入办公室时,办公室是空,则他负责打开灯 之后有人进入办公室,照明灯继续使用 当某人离开办公室 …阅读全文
-
ViewController生命周期
编程实现ViewController初始化时,创建一个自定义的初始化方法,调用父类的init方法,然后进行类的特定初始化。一般情况下,初始化方法不写过于复杂的。 ViewController加载View对象的过程: ViewController调用[代码片段]方法,loadView的默认实现执行以下两个方法之一 如果ViewController与storyboard关联,它会从storyboa …阅读全文
-
应用生命周期
ios应用有5种状态: Not Running(非运行状态)应用未运行 Inactive(前台非活动状态)应用正在进入前台,此时不接受事件处理 Active(前台活动状态)前台正常运行状态 Background(后台状态)不存在后台run loop,则进入Suspended状态 Suspended(挂起状态)不执行代码,内存不够时,应用将终止 整个应用的生命周期如图所示 总结: [代码片段 …阅读全文