首先看一段AF2.x经典代码: 首先我们要明确一个概念,线程一般都是一次执行完任务,就销毁了。 而添加了runloop,并运行起来,实际上是添加了一个do,while循环,这...
一、build 日志 在 Xcode 的 Report navigator 中可以看到 build 日志(如下图所示)。 每一行任务就是一个 task,每个 task显示的...
先来看一个烂大街的面试题: 下面代码结果如何? 答案:除了第一个是YES,其他三个都是NO。在推测结果之前,首先要明白两个问题。isKindOfClass 和 isMembe...
最近做个项目是需要大量的本地数据交互保存持久化操作,由于是新项目所以我们打算使用比较新颖的框架来进行开发,最后经过筛选使用了Realm来作为本地数据操作框架。name我们为什...
简介 cocoapods在1.4.0推出了static framework,先扒扒历史原因. dymanic framework原因 在iOS8以前,苹果只允许发布静态库,当...
一、什么是Audio Unit iOS提供了音频处理插件,支持混合、均衡、格式转换和实时输入/输出用于录制、播放、离线渲染和实时对话如VoIP(互联网协议语音)。你可以从iO...
系统环境:macOS CataLina 10.15.2 1. 安装 RVM 开始安装 进入目录 成功后查看版本 2. Ruby升级 获取Ruby版本 对比Ruby版本 更新R...
一、介绍 GPUImage是一个基于OpenGL ES 2.0的开源的图像处理库,作者是Brad Larson。GPUImage将OpenGL ES封装为简洁的Objecti...
Address Sanitizer(ASan)是一个快速的内存错误检测工具。这里说明它的用法。 参考资料 AddressSanitizerhttps://github.com...
最近在面试的过程中才发现太多没有注意的细节,每一个问题问到最后都是在怀疑人生中度过... 正好趁着工作敲定了之后将performSelector相关的细节总结一番。 基础用法...
performSelector和直接调用方法的区别 performSelector: withObject:是在iOS中的一种方法调用方式。他可以向一个对象传递任何消息,而不...
demo下载[https://github.com/YasinZhou/ThreadLockDemo] 建议一边看文章,一边看代码。 声明:关于性能的分析是基于我的测试代码来...
1. iOS中的事件基本介绍 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件。我们称之为“响应者对象”UIApplication...