首页
学习
活动
专区
工具
TVP
发布

iOS 技术分享

专栏作者
29
文章
39172
阅读量
24
订阅数
iOS - 老生常谈内存管理(一):引用计数
Objective-C支持三种内存管理机制:ARC、MRC和GC,但Objective-C的GC机制有平台局限性,仅限于MacOS开发中,iOS开发用的是RC机制,从MRC到现在的ARC。
师大小海腾
2020-04-24
1.5K0
iOS - 老生常谈内存管理(二):从 MRC 说起
MRC全称Manual Reference Counting,也称为MRR(manual retain-release),手动引用计数内存管理,即开发者需要手动控制对象的引用计数来管理对象的内存。
师大小海腾
2020-04-24
1.5K0
iOS - 老生常谈内存管理(三):ARC 面世
ARC全称Automatic Reference Counting,自动引用计数内存管理,是苹果在 iOS 5、OS X Lion 引入的新的内存管理技术。ARC是一种编译器功能,它通过LLVM编译器和Runtime协作来进行自动管理内存。LLVM编译器会在编译时在合适的地方为 OC 对象插入retain、release和autorelease代码来自动管理对象的内存,省去了在MRC手动引用计数下手动插入这些代码的工作,减轻了开发者的工作量,让开发者可以专注于应用程序的代码、对象图以及对象间的关系上。   本文通过讲解MRC到ARC的转变、ARC规则以及使用注意,来帮助大家掌握iOS的内存管理。   下图是苹果官方文档给出的从MRC到ARC的转变。
师大小海腾
2020-04-24
1.9K0
iOS - 老生常谈内存管理(五):Tagged Pointer
在objc4源码中,我们经常会在函数中看到Tagged Pointer。Tagged Pointer究竟是何方神圣?请开始阅读本文。
师大小海腾
2020-04-24
1.7K0
iOS - 老生常谈内存管理:导读
以下列举了部分有关内存管理的问题。如果你对以下问题存在疑惑,或者只有模糊的答案,那么本系列文章可以给予你帮助。
师大小海腾
2020-04-23
5980
iOS - 聊聊 autorelease 和 @autoreleasepool
作为 iOS 开发者,在面试过程中经常会碰到这样一个问题:在 ARC 环境下autorelease对象在什么时候释放?如果你还不知道怎么回答,或者你只有比较模糊的概念,那么你绝对不能错过本文。
师大小海腾
2020-04-16
2.1K0
iOS - 关于 KVO 的一些总结
KVO使用三部曲:添加/注册KVO监听、实现监听方法以接收属性改变通知、 移除KVO监听。
师大小海腾
2020-04-16
2.4K0
iOS - 关于 KVC 的一些总结
我们可以使用setter方法为currentBalance属性赋值,这是直接的,但缺乏灵活性。
师大小海腾
2020-04-16
1.8K0
iOS - 多线程(四):NSOperation
NSOperation 需要和 NSOperationQueue 配合使用来实现多线程方案。单独使用 NSOperation 的话, 它是属于同步操作, 并不具备开启新线程的能力。
师大小海腾
2020-04-16
1.4K0
深入浅出 RunLoop(一):初识
RunLoop 简介 运行循环,在程序运行过程中循环做一些事情(如接收消息、处理消息、休眠等待等); RunLoop是通过内部维护的事件循环来对事件/消息进行管理的一个对象; RunLoop不是一个简单的do...while循环,它涉及到用户态和内核态之间的切换。 事件循环 事件循环就是对事件/消息进行管理,事件循环可以达到: 没有消息需要处理时,休眠线程以避免资源占用。从用户态切换到内核态,等待消息; 有消息需要处理时,立刻唤醒线程,回到用户态处理消息; 通过调用mach_msg()函数来转移当前线程
师大小海腾
2020-04-16
4210
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战,赢鹅厂证书、公仔好礼!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档