iOS 网络和多线程面试题01~[有答案]

//联系人:石虎QQ: 1224614774昵称:嗡嘛呢叭咪哄

一.选择题(前三题是多选 ,后面为单选题)

1.以下对堆和栈的描述正确的是(多选ABD)

A.栈区[stack]由编译器自动分配并释放,一般存放函数的参数值,局部变量

B.堆区[heap]由程序员分配和释放,如果程序员不释放,程序结束时,可能会由操作系统回收.

C.栈的内存大小是由程序员分配,内存地址是从高地址向低地址存(先进后出的原则)

D.堆是向高地址扩展的数据结构,是不连续的内存区域.

2.以下对Block的描述正确的是(多选ABCD )

A.  Block是一种数据类型,可以被当做参数传递

B.  Block是一个能工作的代码单元,可以在任何需要的时候被执行

C.  默认情况下,不允许在块代码内部修改外部变量的数值

D.  用Block传值时要注意循环引用,当Block内引用局部变量时要用__weak修饰此变量来解除循环引用

3.以下对线程同步、异步、并发、串行以下描述正确的是(ABCD

A.同步和异步决定了要不要开启新的线程,同步:在当前线程中执行任务,      不具备开启新的线程;

B.异步:在新的线程中执行任务,具备开启新线程的能力;

C.并发和串行决定了任务的的执行方式,并发:多个任务并发(同时)执行

D.串行:一个任务执行完毕后,再执行下一个任务

4.对以下四种多线程的技术简介错误的是( C)

A.  pthread是一套通用的多线程API,适用于Unix\Linux\Windows等系统,跨平台\可移植,使用难度大

B. NSThread 是使用更加面向对象,简单易用,可直接操作线程对象

C. GCD是基于NSThread的,充分利用设备的多核

D. NSOperation是基于GCD(底层是GCD)比GCD多了一些更简单实用的功能,使用更加面向对象

5.对于语句NSString *str =[NSData alloc] init];在编译时和运行时分别是什么类型(  D )

A.  编译时NSData,运行时NSData

B.  编译时NSString,运行时NSString

C.  编译时NSData,运行时NSString

D.  编译时NSString,运行时NSData

6.POST对上传的文件大小限制一般为( C )

A.  512KB  B. 1M C. 2M  D.无限

7.数组中可以添加以下那种空值(  B )

A. Nil     是类的空指针类型

B. NSNull  集合中的空值

C. nil     是对象的空指针类型

D. NULL    是其它类型(基本数据类型,C类型指针) 为空值

8. 下面那个不是本地服务器的主机地址(D   )

A. 127.0.0.1:每台机器内置的IP地址,指的就是机器本身

B. localhost:等价于第1种情况的127.0.0.1

C. 交换机\路由器分配的IP地址:真机测试一定要用这个,且真机和服务器得在同一个局域网内

D. 255.255.255.0

9.以下对copy和mutableCopy方法的描述错误的是( B  )

A. copy或mutableCopy方法可以创建一个对象的副本

B. copy 需要实现NSCoding协议来创建不可以变的副本

C. mutableCopy需要先实现NSMutableCopying协议,创建的是可变副本

D. Copy的目的是建立副本,同时修改原始对象和副本不会互相干扰

10.请问下列哪个函数是用来播放带震动音效的( D  )

A、AudioServicesCreateSystemSoundID(CFURLRefinFileURL, SystemSoundID *outSystemSoundID)

B、AudioServicesDisposeSystemSoundID(SystemSoundIDinSystemSoundID)

C、AudioServicesPlaySystemSound(SystemSoundIDinSystemSoundID)

D、AudioServicesPlayAlertSound(SystemSoundIDinSystemSoundID)

简答题

1.什么是线程,进程,他们有什么关系,以及多线程的作用?

答:

线程:在应用程序当中执行的一段代码片段,每个线程都有自己执行的堆栈控件,

进程:在系统当中正在运行的应用程序;

线程与进程的关系:线程是进程的基本的执行单元,一个进程要执行的任务,必须要有线程

多线程的作用:把耗时的操作放在子线程,避免阻塞主线程更新UI,提高程序执行的效率。

2.请说明同步请求与异步请求的区别?

答:

同步请求:使用者通过单个线程调用服务,该线程发送请求,在服务器运行时发生阻塞,并且等待响应。

异步请求:使用者通过两个线程调用服务,一个线程发送请求,而另一个单独的线程响应

3.请说明什么是GET与POST 请求。

答:GCD的语义是获取指定的URL的资源因为在传输过程中,数据被放在指定的URL中不安全,传输数据量小

POST的语句是指定的URL的资源添加数据放在数据体中,按照变量和值相对应的方式,传到了action所指向的URL。

4.优秀的移动应用程序必须具备那些特点?

答:      移动网络应用:良好的UI +良好的用户体验 +实时更新的数据

5.发送HTTP请求的方法有几种方式,并简介每种方式的作用?

答:GET:获取指定的资源

POST:2M  向指定的资源提交数据处理请求,在RESTful风格用于新增资源

HEAD:获取指定的资源头部信息

PUT:替换指定的资源

DELETE:删除指定的资源

OPTIONS:允许客户查看服务器的性能

TRACE:回显服务器收到的请求,主要用于测试或诊断

CONNECT:预留给能够将连接改为管道方式的代理服务器(HTTP代理实用)

6.应用程序中有几种不同的内存区域,分别存储什么数据?

答:(1).栈区[stack]由编译器自动分配并释放,一般存放函数的参数值,局部变量等

(2).堆区[heap]由程序员分配和释放,如果程序员不释放,程序结束时可能会操作系统回收

(3)全局区(静态区)[static]全局变量和静态表变量的储存是存放在一起的,初始化的全局变量和静态变量存放在一起的区域,未初始化的全局变量和静态变量在相邻的另一块区域,程序结束后由系统释放

(4)文字常量区存放常量字符串,程序结束后由系统释放

(5)程序代码区存放函数的二进制代码

7.请说说多线程的优点和缺点?

答:

优点:1.能适当提高程序的执行效率

2.能适当提高资源利用率(CPU,内存利用率)

缺点:1.开启线程需要一定的内存空间(默认请况下,主线程占1M子线程占用512KB)如果开启大量的线程,会占用大量的内存空间,会减低程序的性能

2.线程越多,CPU 在调度线程上的开销就越大

3.程序设计更加的复杂:比如线程之间的通信,多线程的数据共享

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容

  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,121评论 29 470
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,575评论 18 399
  • 1.写一个NSString类的实现 +(id)initWithCString:(c*****t char *)nu...
    韩七夏阅读 3,744评论 2 37
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 1,960评论 0 7
  • 转眼间 父亲去世已经两周年 往事历历在目 犹如昨天 两年七百三十个昼夜 承载了七百三十份思念 儿时的记忆 便是父亲...
    琢玉书生阅读 366评论 2 3