字节跳动

自我介绍

之前项目的亮点,难点,擅长点

实例对象的内存结构?isa_t包含哪些信息

block内为什么要实现__strong?

Swift的方法调度是什么?跟OC的区别?如何强制用消息发送

Swift的写时复制底层如何实现?

进程,线程;串行,并行;同步,异步;并行,并发

进程是资源分配的最小单位,线程是CPU调度的最小单位

并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔发生。

并发的关键是你有处理多个任务的能力,不一定要同时。

并行的关键是你有同时处理多个任务的能力。

串行:一个程序执行没结束前,另一个不能开始,要一个一个的执行。

并行:一个程序执行没结束,另一个已经开始。

同步:当程序1调用程序2时,程序1停下不动,直到程序2完成回到程序1来,程序1才继续执行下去。

异步:当程序1调用程序2时,程序1径自继续自己的下一个动作,不受程序2的的影响。

APP启动流程,启动优化

字符串为什么用copy

属性特性内存管理上有哪些关键字

多线程