前言在之前的两篇文章中,大致介绍了一些基本概念以及启动优化的思路,下面来着重介绍一个 pre-main阶段 的优化方案,即 二进制重排,这个方案最开始是由抖音的这篇文章抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 提出来的。...
冷启动和热启动启动的过程一般是指 从用户点击APP图标 到 进入到APP页面 的过程,一般在iOS开发中分为 冷启动 和 热启动
冷启动:用户将 设备重启 或者是 手动kill掉APP进程,又或者是 APP长时间未打开过,当用户点击启动APP图标的...
前言早期的 数据访问 是直接通过 物理地址 访问 物理内存,而物理内存是有 固定大小的,这种方式有以下两个问题:
内存不够用
内存数据的安全问题
内存不够用的解决方案:虚拟内存针对问题1,我们在 进程和物理内存 之间增加一个 中间层,这个中间层就...
Block类型block 主要有三种类型: 全局区、堆区、栈区
__NSGlobalBlock__ :全局block,存储在 全局区
123void(^block)(void) = ^{ NSLog(@"ZJ"...
前言本文主要介绍常见的锁,以及 synchronized、NSLock、递归锁、条件锁 的底层分析
锁借鉴一张锁的性能数据对比图,如下所示
可以看出,图中锁的性能从高到底依次是:OSSPinLock(自旋锁) -> dispatch_sema...
一、前言SVN 是 subVersion 的缩写,是一个开放源代码的版本控制系统,通常被我们用于 多人共同开发 同一个项目,实现资源共享,实现 集中式 的管理。
二、Cornerstone 使用
添加仓库(Add Repository)
打开 Co...