摘要:
一、什么是闭包在 wikipedia 上,闭包的定义是:In programming languages, a closure is a function or reference to a function together with a referencing environment—a table storing a reference to each of the non-local va... 阅读全文
摘要:
一、前言苹果在 WWDC2015 大会上引入了 bitcode,随后在 Xcode7 中添加了在二进制中嵌入 bitcode(Enable Bitcode) 的功能,并且默认设置为开启状态。在What is app thinning? (iOS, tvOS, watchOS)一节中有以下定义:Bitcode is an intermediate representation of a comp... 阅读全文
摘要:
一、什么是自动释放池OC 中的一种内存自动回收机制,它可以延迟加入 AutoreleasePool 中的变量 release 的时机,即当我们创建了一个对象,并把它加入到了自动释放池中时,它不会立即被释放,会等到一次 runloop 结束或者作用域超出 {} 或者超出 [pool release] 之后再被释放。二、自动释放池的创建与销毁时机MRC:NSAutoreleasePool * pool... 阅读全文
摘要:
atomic在set方法里加了锁,防止了多线程一直去写这个property,造成难以预计的数值。当属性使用atomic修饰时,它的读和写是原子性的:当线程A进行写操作,这时其他线程的读或者写操作会因为该操作而等待。当A线程的写操作结束后,B线程进行写操作,然后当A线程需要读操作时,获得了在B线程中修改的值。如果有C线程在A线程读操作之前release 了该属... 阅读全文