多线程同步
摘要:并发,与并行这个问题,估计网络上的人写得也不是很对。 并行,是确实物理上,多个任务被同时执行。举例子,多个CPU就可以实现,多个任务在不同的CPU同时处理。 并发,是多个任务都得到了处理,但是不是保证是在同一时刻。举例子,多线程在一个核里面进行调度,切换上下文,执行不同的任务,由于表面上看响应速度加
阅读全文
MJExtension代码解释
摘要:Runtime 是什么? objective-C会把函数调用的转换为消息发送,objc_MsgSend(receiver, msg), 注意,recevier指的是消息的接受者。那么self, super的区别是什么?其实 super 是一个 Magic Keyword, 它本质是一个编译器标示符,
阅读全文
SDWebImage代码赏析
摘要:过NSOperationQueue来控制 为了保护变量,使用大量了sychronized 读的时候使用了dispatch_sync 写的时候使用 同时根据Apple Developer Document的要求,在并发编程里面,继承NSOperation必须实现函数start(), 与属性isFini
阅读全文
AFNetworking 源码解析
摘要:3.0 之后,就取消了NSOperation的控制。 因为根据Apple Developer Document的文档 https://developer.apple.com/documentation/foundation/nsurlsession/1411597-sessionwithconfig
阅读全文
新鲜的异国风情
摘要:有些外国公司喜欢使用hackerank , geektasic , collecedit 1. HR使用日程安排 greenhouse.io 2. zoom.us 会议
阅读全文
某国内知名互联网金融服务公司的一面与二面
摘要:1. 多线程的区别。 生命周期管理。 NSOperationQueue 优先级,状态控制(取消),依赖,总数控制。 GCD异步,同步。group notify, dispatch_semaphore 2. http, https, tcp。 https安全隐患,预防措施。 wifi路由器,DNS,证
阅读全文