那些用烂了却一直出现在面试中的经典面试题合集(三)

面试题1:

1.CoreFundation框架中的CFRelease函数作用是什么?

A. 让对象的引用计数器减一    B.直接释放指针指向的堆区域数据

答案B

那些用烂了却一直出现在面试中的经典面试题合集(三)_第1张图片

面试题2:

2.CFRelease函数和free函数有什么区别?原因是什么?

答案:在CoreFundation框架中提供的CFRelease函数专门用来释放CoreFundation的结构体指针。CFRelease和free都是释放内存空间。但是

free有可能存在内存泄露,释放不干净。

因为:CoreFundation框架中的结构体内部也许还有指针指向堆区域,如果直接free会导致那部分堆区域无法释放,引起内存泄露。

那些用烂了却一直出现在面试中的经典面试题合集(三)_第2张图片

面试题3:

线程和进程的区别?

1. 每个应用程序都会一一对应一个进程,在内存中会占据一块存储空间

PID就是进程ID的. 从上图可以看出每一个程序运行的时候, 在内存中多会对应的进程ID.

2. 进程在执行任务的时候,会开启线程,一条线程就代表一个任务,进程中可以开启多条线程, 所以可以同时执行多个任务

面试题4:

集成测试通常都有那些策略?

1、在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;

2、各个子功能组合起来,能否达到预期要求的父功能;

3、一个模块的功能是否会对另一个模块的功能产生不利的影响;

4、全局数据结构是否有问题;

5、单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。

你可能感兴趣的:(那些用烂了却一直出现在面试中的经典面试题合集(三))