<!doctype html>
多线程管理
多线程管理
进程
什么是进程
-进程是指在系统中正在运行的一个应用程序
-每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内
-
是CPU
分配资源
和调度(执行任务)的最小单位 -
同一个进程内的线程共享进程的资源。
线程
什么是进程
-一个进程(程序)的所有任务都在线程中执行
- 线程是CPU
调用(执行任务)
的最小单位
-作用
- 负责程序运行的内存分配 每一个进程都有自己的独立的虚拟空间
多线程
多线程的概念
-
1个进程中可以开启多条线程,在同一时间,一个线程执行一个任务,CPU快速地在多条线程之间调度(切换)
-
1个线程中任务的执行是串行的
-
如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务
-
也就是说,在同一时间内,1个线程只能执行1个任务
-
总结:`要开多条线程,将耗时的操作放在子线程,主线程负责UI界面的刷新
-作用
- 执行路径 负责程序中代码实际执行
子线程的创建于销毁
- 当线程中的任务执行完毕后,由系统自动销毁,不需要我们销毁
多线程的原理
-
同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)
-
1个进程中可以开启多条线程,在每个线程添加不同的任务
-
多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)
-
如果CPU调度线程的时间足够快,就造成了多线程并发执行的假象
注意
- 一条主线程占用内存中栈区1M, 子线程占用512KB
线程不是无止境的开辟子线程
-多线程的优势:
-
1.充分利用多核优势,将不同线程的任务分配给不同的CPU执行,进入”并行”运算
-
2.将耗时的操作放到子线程中去执行,由主线程负责跟新主UI界面,是程序更加流畅,用户体验效果更佳
-多线程弊端 1,新建线程会消耗内存空间和CPU时间
多线程技术的本质
- 注意:
多线程技术是为了并行执行多项任务,不是提高单个算法的本身效率