首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
飞猪666
掘友等级
iOS开发工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
160
文章 133
沸点 27
赞
160
返回
|
搜索文章
最新
热门
现有iOS工程集成React Native
现有的iOS项目里集成RN的支持的大体框架, iOS应用集成RN的SDK,运行时加载预先打包好的jsBundle。 主要内容 在现有iOS工程集成React Native组件的主要内容有: 设置Rea
结构体内存对齐原理
问题: 如下两个结构体,只是成员位置不同,占用内存大小是否相同呢? 这个题目考查的就是内存对齐的知识点,看完这篇文章你就知道这道题的答案是什么了。 一、什么是内存对齐 内存对齐(Memory alig
iOS 程序内存布局
iOS程序的内存布局如下举例:打印结果如下:
iOS 使用CADisplayLink、NSTimer有什么注意点?
平时我们使用NSTimer或者CADisplayLink,如果不加处理直接使用系统提供的API方法,就有可能出现强引用问题(注意是强引用非循环引用)。 由控制器A进入控制器B, 定时器开始工作,但当点击返回, 由B页面返回A页面时,会发现控制器B 的dealloc方法没有调用,…
Objective-C 中各种锁的使用与区别
下面就讲解一下这些锁如何使用,以及各自的特点。 OSSpinLock叫做自旋锁,等待锁的线程会处于忙等(busy-wait)的状态, 一直占用CPU的资源。 目前已经不安全(iOS10 之后废弃了),可能会出现优先级反转的问题。 优先级反转:如果等待锁的线程优先级较高,会一直占…
Swift5.1 - 扩展(Extension)
扩展可以分为枚举、结构体、类、协议添加新功能。 可以添加方法、计算属性、下标、便捷初始化器、嵌套类型、协议等等。 不能覆盖原有的功能。 不能添加存储属性,不能向已有属性添加属性观察器。 不能添加父类。 不能添加指定初始化器,不能添加反初始化器(deinit)。 如果希望自定义初…
Swift5.1 - 高级运算符
Swift 的算数运算符出现溢出时会抛出运行时错误。 Swift有溢出运算符(&-、 &+、&*), 用来支持溢出。(转圈圈) 类、结构体、枚举可以为现有的运算符提供自定义的实现,这个操作叫做:运算符重载。 要得知两个实例是否等价,一般做法是遵守E…
OC - GCD 中死锁分析
死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。 串行队列:任务一个一个按顺序执行,后面的任务必须等待前面的任务执行完毕后才能执行。 并发队列:多个任务可以同时执行, 后面的任务不需等待前面的任务…
OC中 isKindOfClass 与 isMemberOfClass 的本质
如上,若打印结果和你预期的一致,那恭喜你已经掌握了两者的本质,不需要再继续往下看了。 想要理解打印的结果,最直接的方法就是看下isKindOfClass和isMemberOfClass的底层实现。在runtime源码的NSObject.mm文件中可以找到对应方法的实现。如下: …
Objective-C中的 self 与 super 的理解
Person类、和Student类,其中 Person继承自NSObject, Student继承自Person。 在main.m方法中创建一个Student的实例。 如果结果正如你所料,就无需往下看了。(不错~) 为什么打印的结果和我们预料的不一样呢?为了探个究竟,我们可以将…
下一页
个人成就
文章被点赞
27
文章被阅读
19,886
掘力值
562
关注了
46
关注者
18
收藏集
3
关注标签
22
加入于
2019-06-17