ARC 代码编译阶段,在上下文中自动成对插入MRC下的retain和release方法,保证通过引用计数正确的管理内存(针对堆上)。 iOS中引用计数的存储方案 1、Tagg...
ARC 代码编译阶段,在上下文中自动成对插入MRC下的retain和release方法,保证通过引用计数正确的管理内存(针对堆上)。 iOS中引用计数的存储方案 1、Tagg...
@property @property修饰的变量,会通过编译器加入@synthesize自动合成为ivar+getter+setter(property_t),而且会生成成员...
事件的生命周期 1、系统响应阶段:触摸屏幕→IOKit(IOHIDEvent)→通过mach port(IPC进程间通信)转发给SpringBoard(IOHIDEvent)...
RunLoop的核心,主要是涉及到用户态和内核态的切换(mach_msg())。 基本作用 保持程序运行(main()的UIApplicationMain函数中会启动主线程的...
基本原理 app进程的地址空间被分为代码区,数据区,栈区,堆区,进程开始时mach-o文件会把各部分按需加载到对应的内存空间。 虚拟内存 内存管理器为每个进程都创建了一个虚拟...
函数或函数指针+外部上下文变量 = 闭包,block其实是OC对闭包的实现,配合dispatch_queue实现简单的多线程异步。Dispatch_block_t是GCD提供...
多线程下为了访问安全,对同一块资源按照顺序进行的线程同步技术,加锁最常见。 OSSpinLock 自旋锁 申请锁的操作为原子操作,保证只有一个线程在申请锁。 原理:执行do-...
堆栈区 堆heap:内存由程序员分配、释放,地址不连续,空间大,在OC中一般用来对对象的内存管理。 栈stack:编译器自动分配释放,线性结构,连续的内存区域,速度较快,空间...
iOS的渲染和绘制机制 显示器原理和技术 电子枪逐行扫描(HSync),一帧画面绘制完成后,复原准备下一帧(VSync信号),此信号产生的频率即刷新率帧率。当缓冲区只有一个时...
Core Animation iOS系统的核心地位:应用内和应用间都会应用(多个程序间的手势切换)SpringBoard→BackBoard。 应用内的工作:Core Ani...
1、ipa包体积优化 1.1 编译配置优化:编译器代码层面优化Optimize Level;Bitcode(较难适配) 1.2 去除符号信息:影响调试和断点,Strip L...
TCP/IP协议 概述 //www.greatytc.com/p/b4250ba3ef12 分层模型:TCP/IP协议的网络模型分为应用层,传输层,网络层,链路层。...
首先,Category(类别)和Extension(类扩展)是非正式协议的两种写法,目的都是在无需子类化的情况下,给类添加方法(和属性)。 Swift 在Swift中,已经没...
OC和SwiftProtocol的共同点 本质都是抽取不同类的共同方法和属性(声明),供遵循协议的类或对象使用。 都可以通过定义协议实例deleagate,来实现委托代理模式...
666,膜拜
CoreAnimation深入学习的愉快探讨CoreAnimation深入学习的愉快探讨 @author imqiuhang 📣前言 If you are writing iOS apps, you are using...