进程的定义:
iOS系统中 进程是系统中正在运行的1个应用程序
每个进程都是独立的,每个进程均运行在其专用且受保护的内存中。
线程定义:
进程的基本执行单元,1个进程的所有任务都是在线程正执行的。
进程想要执行任务,必须得油线程,进程至少需要有1条线程。
目前iOS系统是单进程的,并默认开启1条线程,就是主线程或UI线程 -- iOS 沙盒模式安全,权限较安全。
线程和进程的关系
地址空间:同一进程的线程共享进程的地址空间。进程间是相对独立的切受保护的地址空间
资源拥有:同一进程内的线程共享本进程的资源eg:内存 I/O cpu
进程间的资源是独立的
崩溃:一个进程崩溃不会对其他进程产生影响,但是线程崩溃会导致进程死掉。
切换:进程切换,消耗资源多,效率高,所以涉及到频繁切换,使用线程要好。同时进行并且
执行过程中:每个进程有程序的入口、顺序执行序列和程序入口,但是线程不能独立执行,但是线程不能独立执行,必须依存在应用程序中
关系:线程是进程的最小执行单位
思考GCD中队列 与线程是什么关系?
没有相关的联系
队列就是1中数据结构 - 里面放的就是执行的任务
任务的执行速度 - 任务执行的复杂度,任务的优先级,cpu的调度
多线程的意义:
并发执行多个任务
网友评论