2018年第二次面试题

1、AFNetworking实现原理

2、iOS音频采集有几种方式

        在iOS中有很多方法可以进行音视频采集。如 AVCaptureDevice, AudioQueue以及Audio Unit。其中 Audio Unit是最底层的接口,它的优点是功能强大,延迟低; 而缺点是学习成本高,难度大。对于一般的iOS应用程序,AVCaptureDevice和AudioQueue完全够用了。但对于音视频直播,最好还是使用 Audio Unit 进行处理,这样可以达到最佳的效果,著名的 WebRTC 就使用的 Audio Unit 做的音频采集与播放。

详见:https://blog.csdn.net/garrylea/article/details/78025283

3、结构体的存储结构是什么样的 例如struct中含有一个int,一个char,需开辟多大空间,是如何存储的

        提到结构体,相信大家都知道元素存储要对齐,话是没有错,只是这个“对齐”里面包含了很多微妙的东西。首先详细的给出结构体内存分配的原则吧:编译器按照成员列表顺序一个接一个地给每个成员分配内存。只有当存储成员时需要满足正确的边界对齐要求时,成员之间才可能出现用于填充的额外内存空间。

详见:https://blog.csdn.net/u014800094/article/details/52275781

4、数据库的安全线程问题,是如何处理的

sqlite支持三种不同的线程模式:

1)单线程single-thread。这种模式中,所有的互斥锁都失效,并且sqlite超过一个线程就不能安全的使用。

2)多线程multi-thread。这种模式中,sqlite可以安全的被多个线程使用,假如此时在两个或者更多线程中同时使用不止一个database的连接。只要此时没有两个或者更多的线程同时使用一个database的连接。

3)串行化serialized。在串行化模式中,sqlite可以不受限制的使用安全的被多个线程使用。

线程模式可以在编译阶段(当sqlite库从源码中进行编译时),或者在启动阶段(当准备使用sqlite的应用程序正在初始化时),或者运行阶段(当新的sqlite数据库连接正在被创建时)。一般上来讲,运行阶段可以覆盖启动阶段,而启动阶段可以覆盖编译阶段。除了,单线程模式一旦选定就不能被覆盖更改。

默认模式是串行化模式。

详见:https://blog.csdn.net/chinaclock/article/details/48623741

5、sdwebimage如何处理多线程

        @synchronized这个结构发挥了和锁一样的作用:它避免了多个线程同时执行同一段代码。和使用NSLock进行创建锁、加锁、解锁相比,在某些情况下@synchronized会更方便、更易读。SDWebImage就是使用了@synchronized来保证线程安全的,内部使用@synchronized来使得代码获得原子性,从而保证多线程安全。

6、iOS实现GIF的播放

详见:https://www.cnblogs.com/wfwenchao/p/5671663.html

7、runloop有几种模式,实现原理

详见:https://www.jianshu.com/p/911549ae4bf8

8、table中cell加载图片,table滑动如何停下来才去加载  停停滑滑如何终止和开始加载图片

9、实现颜色渐变

10、图文混排

11、如何制作图片圆角  如何绘制的

12、如何设计架构

13、函数指针,与指针函数有啥区别

14、coredata如何做线程存储安全的

详见:https://blog.csdn.net/sodaslay/article/details/77171016

15、iOS中有几种锁 

详见:https://blog.csdn.net/qq_30513483/article/details/52349968

16、kvo和kvc的实现原理  kvo需要注意什么

17、通知安全吗  为什么说不安全

18、引入.a文件时,含有category,如何引入, 应该怎么做,编译时为什么要这么做

19、你如何来设计连麦

20、实现一个是动画,跟贪吃蛇头差不多,他的口一张一合,同时转圈,如何实现

21、如果是你,你会如何设计性能监控

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,067评论 25 708
  • Android(2017-2018)BAT面试题整理(Android篇,含答案) 版权声明:本文为博主原创文章,未...
    nic启立阅读 30,499评论 11 471
  • 九月第一本书: 《人类的群星闪耀时》 尽管英雄史观遭到人们的批判,但不得不承认,那些出类拔萃的英雄人物在时代变迁的...
    小数学家丢潘图阅读 580评论 2 0
  • 2017-5-24 湖北 石会英 【心剧情】: 印度电影《摔跤吧爸爸》,男主角马哈维亚,印度前摔跤冠军,一生最大的...
    石会英阅读 358评论 0 0
  • 你总是在寂静无人的时候胡思乱想 然后莫名的不开心 这是一种不公平的“善良” 一面欢笑,一面悲伤 你总是在面对别人的...
    猫弦HQ阅读 221评论 2 2