iOS面试题(三)

1.简述同步与异步

2.什么情况下会发生内存泄漏和内存溢出?

3.主线程中在跑死循环的同时,是否可以保证界面响应?

4.简述NSRunLoop、block和代理 的哪个好

5.你们项目怎么计算时间复杂度

6.数据存储

7.网络

8.什么是GCD

9.多线程安全怎么控制

10.社交行为的步骤

11.如何选择delegate、notification、KVO?

12.线程安全设计技巧

 a. 完全避免数据同步(可能性比较小)

 b. 了解同步的限制

 c. 注意对代码正确性的威胁(保证数据同步安全,以及防止线程死锁)

 d. 尽量只使用一个锁进行数据同步保护,避免产生死锁

e. 使用线程同步工具,

13.线程安全总结:

a. 不可改变的对象,通常是线程安全的

b. 主线程负责处理响应事件

    线程安全的类和函数:  NSArray, NSData, NSNumber.....

     非线程安全:  NSBundle, NSCoder, NSArchiver, NSMutableArray

你可能感兴趣的:(iOS)