7.28号投的网易严选
8.8下午A了一个半题,然后进入了面试,
约了8.12下午4.10-4.50的面试,然后等到了4.17才等来面试,不知道是不是没睡醒还是睡多了,然后面的难以言语表达。。。。
- 首先自我介绍
- 介绍下项目,按照我的项目一一介绍下来
- 提到了缓存,解释了为什么没有做磁盘缓存,内存缓存的原因,在哪里操作存储的?考虑过数据的安全和同步性问题吗?(没考虑到,说知道有哪些,信号量,NSLock等)
- 问了ios中有哪些锁(八种锁,没说完)
- 问了自旋锁和互斥锁,自旋锁会导致死锁吗?(会。。。。应该是之前会出现,现在添加了自旋上限时间,然后现在不会了)
- 看你Runtime做了归档,说下runtime
- 然后讨论后台传输的数据是json,还是什么,归档呢
- 谈下runloop的理解,用过吗?(说了runloop机制的处理流程,在学习线程通信的时候,用过线程保活)线程保活的使用场景呢?
- 知道ios扩展吗?原理呢?(解释了)
- 循环引用知道吗,怎么解决(block,delegate,和NSTimer,NSTimer做的少,不是很明白)
- 由循环引用中的block,扯Block的底层实现原理,然后问了self呢?怎么block实现的?__block的使用场景
- Http和Tcp关系,详细解释一下
- 如何判断链表存在环
- 冒泡排序的优化?(记不得,没答出来),快速排序的最好最坏情况(。。。。。)
- 32位机最大寻址空间,进程通信的方式
- 问了栈和队列的特点
本文记录了作者2021年秋季应聘网易严选的面试过程,涵盖了面试中的技术问题,包括缓存策略、iOS锁机制、运行时、数据传输格式、RunLoop、iOS扩展、循环引用、Block底层原理、网络协议、链表环检测、排序算法及内存寻址等。
订阅专栏 解锁全文
7208

被折叠的 条评论
为什么被折叠?



