ios开发之多线程理论

来源:互联网 发布:mac怎么屏幕录制 编辑:程序博客网 时间:2024/05/12 03:00

一、进程

进程是系统中正在运行的程序,例如qq。从专业角度上讲进程就是应用程序的执行实例。进程不能执行任务,另外进程在运行时创建的资源随着进程的终止而死亡。

二、线程

1、 线程是用来执行任务的,线程执行任务完毕就会被销毁。在上述已经说过,进程不能执行任务,进程想要完成任务就必须创建线程。一个线程只能同时执行一项任务,因此想要同时执行多项任务就要创建多个线程。2、线程包括:主线程和子线程。主线程:当应用程序启动时会自动创建和启动,通常用来输入并响应各种消息和事件,当主线程终止运行时,该程序也就结束了。子线程:由主线程创建,用来帮助主线程执行程序的后台处理任务。如果一个子线程中有创建其它子线程,那么在创建之后,它们是相互独立的,多个子线程效果上可以同时执行。举个例子来说:小红有一个咖啡店,她雇了一个店长来打理店面,另外雇了咖啡师、咖啡小妹。在这里咖啡店就是进程,店长是主线程,咖啡师、咖啡小妹就是子线程。3、一个进程可以有多个线程,并且所有线程都在该进程的虚拟地址空间中,因此同一个进程的线程可以使用该进程的全局变量和系统资源。

三、进程和线程的关系

1、一个操作系统可以有多个进程,一个进程可以创建多个线程(至少要创建一个线程)。2、线程是CPU执行任务的基本单位,一个进程可以有多个线程,但只能同时执行一个任务。2、进程终止运行时,线程也就不能在工作了3、同一个进程的线程可以使用该进程的全局变量和系统资源

四、线程的作用

1、主线程(1)进程一启动,主线程就自动创建(2)显示和刷新UI界面,并且处理UI事件2、子线程(1)子线程不能显示、刷新UI界面(2)子线程处理比较耗时的操作

五、使用多线程目的

1、提高程序工作效率 2、可以适当提高资源(CUP和内容)的利用率****注意:不可滥用多线程***因为线程占用一定内存,大量使用会降低程序的性能,CPU调度现成的开销也会变大,另外线程越多程序设计也就越复杂。
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 生完孩子出虚汗怎么办 3岁宝宝抵抗力差怎么办 5岁宝宝免疫力低怎么办 狗狗后腿o型怎么办 狗狗前腿内八字怎么办 小猫腿摔瘸了怎么办会好吗 小狗的腿断了怎么办 狗后腿摔瘸了怎么办 狗狗脖子挠破了怎么办 狗狗脖子挠破化脓怎么办 狗狗大腿骨折了怎么办啊 狗狗洗澡后拉稀怎么办 狗狗好像生病了怎么办 奶狗前腿断了怎么办 狗摔了一下瘸了怎么办 小狗腿突然瘸了怎么办 狗腿突然瘸了怎么办 狗腿受伤了肿了怎么办 狗狗缺钙腿变形怎么办 小狗腿摔骨折了怎么办 狗狗脚掌被压了怎么办 狗狗的脚骨折了怎么办 给猫灌药水呛到怎么办 吃佐匹克隆白天工作量降低怎么办? 手机网页不显示图片怎么办啊 页眉页脚同前节怎么办 小米8后盖缝隙大怎么办 狗子生了一个不动的小狗怎么办 狗狗肚子有脓包怎么办 小孩幼儿园数学不开窍怎么办 老百姓打仗了报警派出所不管怎么办 和人打架报案了怎么办 皇上死后的妃子怎么办 武警改制警卫系的学员怎么办 正团病故后住房怎么办 遇到保姆式领导该怎么办 限购房子卖不了怎么办 斑马线礼让行人行人不走怎么办 中国留学生签证在美国被取消怎么办 建行卡网银帐号密码输入错误怎么办 建行卡密码忘了怎么办?