首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
wwqin7
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
17
文章 17
沸点 0
赞
17
返回
|
搜索文章
赞
文章( 17 )
沸点( 0 )
深入理解iOS的block
在文章之前,先抛出如下问题。 如果现在不是很熟悉,希望看完这篇文章,能有个新的认识。 先介绍一下什么是闭包。在 wikipedia 上,闭包的定义是 block 实际上就是 Objective-C 语言对于闭包的实现。 如图所示,age是直接值传递,height传递的是*hei…
Swift 解决手势冲突的方案
在 Swift 开发中,我们常常遇到多个手势识别器相互冲突的情况,比如在一个 UIScrollView 上添加 UITapGestureRecognizer 来关闭键盘或执行某些操作时,可能会影响滚动
Swift进阶-值类型&引用类型&方法调度
在Swift中,提到值类型我们通常会想到struct,而类是引用类型,那么结构体为什么是值类型,类为什么又是引用类型呢?本文将从结构体和类触发,来探究值类型和引用类型的区别
iOS 从源码解析Run Loop (七):mach msg 解析
Run Loop 最核心的事情就是保证线程在没有消息时休眠以避免系统资源占用,有消息时能够及时唤醒。Run Loop 的这个机制完全依靠系统内核来完成,具体来说是苹果操作系统核心组件 Darwin 中的 Mach 来完成的。Mach 与 BSD、File System、Mach…
iOS数据持久化设计
了解移动端的数据持久化方式和对应的使用场景,提供相关技术选型做技术储备。 同时降低了服务器的访问次数,节约服务器资源。(图片) 离线使用。 用户浏览过的数据无需联网,可以再次查看。 部分功能使用解除对网络的依赖。(百度离线地图、图书阅读器) 无网络时,允许用户进行操作,等到下次…
iOS Runtime
理解 Objective-C 的 Runtime 机制可以帮我们更好的了解这个语言,适当的时候还能对语言进行扩展,从系统层面解决项目中的一些设计或技术问题。了解 Runtime ,要先了解它的核心 - 消息传递 (Messaging)。 源码是否曾经有过动态解析 如果没有 则看…
iOS底层学习——动态方法决议和消息转发
动态方法决议探索,通过案例深入分析动态方法决议的具体实现流程和思路。即通过重新指定方法实现,来给一次补救的机会。消息转发探索,分析快速消息转发和慢速消息转发。
如何理解iOS的Runloop?
a. 保证程序不退出 ; b. 负责处理输入事件 ; c. 如果没有事件发生,会让程序进入休眠状态。 从上面可以得出结论,为什么要使用运行循环,因为这是一个 APP 的基本,没有运行循环,就没有 APP 的正常运行。 每一个线程内部都有一个消息循环。只有主线程的消息循环默认开启…
iOS 内存泄漏场景与解决方案
内存泄漏指的是程序中已动态分配的堆内存(程序员自己管理的空间)由于某些原因未能释放或无法释放,造成系统内存的浪费,导致程序运行速度变慢甚至系统崩溃。 当对象 A 强引用对象 B,而对象 B 又强引用对象 A,或者多个对象互相强引用形成一个闭环,这就是循环引用。 Block 会对…
iOS底层学习 - 内存管理之内存管理方案
移动端的内存管理技术,主要有 GC(Garbage Collection,垃圾回收)的标记清除算法和苹果公司使用的引用计数方法。 相比较于 GC 标记清除算法,引用计数法可以及时地回收引用计数为 0 的对象,减少查找次数。但是,引用计数会带来循环引用的问题,比如当外部的变量强引…
下一页
关注了
1
关注者
0
收藏集
2
关注标签
0
加入于
2021-04-29