程序 = 数据结构 + 算法
其实很多同学知道数据结构与算法很重要,但是却不明觉厉。 这里我们看一个简单的题: ...阅读全文
说到 Block
,我们经常容易想到的就是:copy
、循环引用
。那么 Block
的本质究竟是什么,为什么要用 copy
来修饰,还有什么情况下会导致循环引用,我们该如何避免。这篇文章带着大家一起探讨一下 Block
的底层实现与使用
...阅读全文
多线程中的锁通常分为互斥锁和自旋锁,这篇文章主要向大家介绍一些自旋锁的原理以及atomic的底层实现 ...阅读全文
在IOS开发中,同步锁相信大家都使用过,即 @synchronized
,这篇文章向大家介绍一些 @synchronized
的原理和使用
...阅读全文
GCD
全称 Grand Central Dispatch
,是Apple开发的一个多核编程解决办法。该方法在Mac OSX 10.6 雪豹 中首次推出,随后引入到IOS4.0中。GCD是一个替代NSThread
,NSOperationQueue
等技术的方案
...阅读全文
NSTimer
大家都熟悉,他的api
也都很简单,但是其使用过程并不容易 ,相信用过的同学都踩过坑。通常我们这么用
...阅读全文
KVO
一直是IOS
面试中的重点,下面的面试题你碰到过吗?
KVO
的底层是如何实现的? addObserver:forKeyPath:options:context:
的context
有什么用? KVO
吗
...阅读全文
KVC
就是键值对Key-Value Coding
,它是苹果提供给我们处理对象的一种机制。通常我们对属性的操作会通过他的set
和get
方法,但是这需要我们指定相应的setKey
或getKey
等方法,随着属性列表的增长我们访问这些属性也必须如此
...阅读全文