首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
面试
订阅
liangzhimy
更多收藏集
微信扫码分享
微信
新浪微博
QQ
23篇文章 · 0订阅
iOS -- 经典面试题
1. Runtime 是什么? Runtime是一套有C、C++和汇编混合编写的API,为OC加入了面向对象以及运行时的功能。 运行时是指将数据类型的确定有编译时,推迟到了运行时。 比如:在编译时,只读取macho中的数据到ro,而真正方法的读取是在rw中体现的,编译好的ro是…
iOS进阶之路 (十六)多线程 - GCD
GCD(Grand Central Dispatch) 是基于C语言的API,是苹果公司为多核的并行运算提出的解决方案。GCD会自动利用更多的CPU内核(比如双核、四核)。程序员只需要将任务添加到队列中,并且指定执行任务的函数,不需要别写任何线程管理的代码。 学习 GCD 之前…
YYCache 源码解析
YYCache是国内开发者ibireme开源的一个线程安全的高性能缓存组件,代码风格简洁清晰,在GitHub上已经有了1600+颗星。 阅读它的源码有助于建立比较完整的缓存设计的思路,同时也能巩固一下双向链表,线程锁,数据库操作相关的知识。如果你还没有看过YYCache的源码,…
iOS探索 多线程面试题分析
... 多读单写功能指的是:可以多个读者同时读取数据,而在读的时候,不能写入数据;在写的过程中不能有其他写者去写。即读者之间是并发的,写者与其他写者、读者之间是互斥的 多线程在日常开发中占有不少份量,同时面试中也是必问模块。但只有基础知识是一成不变的,综合运用题稍有改动就是另外…
iOS - 老生常谈内存管理(五):Tagged Pointer
在objc4源码中,我们经常会在函数中看到Tagged Pointer。Tagged Pointer究竟是何方神圣?请开始阅读本文。 1. Tagged Pointer 是什么? 为了节省内存和提高执行效率,苹果在64bit程序中引入了Tagged Pointer技术,用于优化…
iOS 符号二三事
调试符号:包括行号信息的调试符号信息,行号信息中记录了函数和变量所对应的文件和文件行号。 Mach-O 中可以保存有调试信息,Mach-O采用DWARF (Debug With Arbitrary Record Foramt) 的标准调试信息格式。DWARF 中调试信息也可以单…
IOS面试考察(一):runtime相关问题
1. IOS面试考察(一):runtime相关问题 runtime是iOS开发最核心的知识了,如果下面的问题都解决了,那么对runtime的理解已经很深了。 runtime已经开源了,这有一份别人调试好可运行的源码objc-runtime,也可以去官网找objc4 官方的代码下…
IOS面试考察(九):性能优化相关问题
1. IOS面试考察(九):性能优化相关问题 APP的启动时间,直接影响用户对你的APP的第一体验和判断。如果启动时间过长,不单单体验直线下降,而且可能会激发苹果的watch dog机制kill掉你的APP,那就悲剧了,用户会觉得APP怎么一启动就卡死然后崩溃了,不能用,然后长…
iOS内存二三事
Page In/Out和 Swap In/Out 概念类似,只不过Page In/Out是将某些页的数据写到内存/从内存写回磁盘交互区;而Swap In/Out是将整个地址空间的数据写到内存/从内存写回磁盘交互区;本质都是交互机制。 通用的计算机(大型机和专用计算机不在此范围)…
iOS底层学习 - 多线程之中的锁🔐
锁 -- 是保证线程安全常见的同步工具。锁是一种非强制的机制,每一个线程在访问数据或者资源前,要先获取(Acquire) 锁,并在访问结束之后释放(Release)锁。如果锁已经被占用,其它试图获取锁的线程会等待,直到锁重新可用。 前面说到了,锁是用来保护线程安全的工具。 可以…