多线程的基本概念
2015-12-24 23:25
204 查看
<!doctype html>
多线程管理
什么是进程
-进程是指在系统中正在运行的一个应用程序
-每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内
是CPU
同一个进程内的线程共享进程的资源。
线程
什么是进程
-一个进程(程序)的所有任务都在线程中执行
线程是CPU
-作用
负责程序运行的内存分配 每一个进程都有自己的独立的虚拟空间
1个进程中可以开启多条线程,在同一时间,一个线程执行一个任务,CPU快速地在多条线程之间调度(切换)
1个线程中任务的执行是串行的
如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务
也就是说,在同一时间内,1个线程只能执行1个任务
总结:`要开多条线程,将耗时的操作放在子线程,主线程负责UI界面的刷新
-作用
执行路径 负责程序中代码实际执行
多线程的原理
同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)
1个进程中可以开启多条线程,在每个线程添加不同的任务
多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)
如果CPU调度线程的时间足够快,就造成了多线程并发执行的假象
-多线程的优势:
1.充分利用多核优势,将不同线程的任务分配给不同的CPU执行,进入”并行”运算
2.将耗时的操作放到子线程中去执行,由主线程负责跟新主UI界面,是程序更加流畅,用户体验效果更佳
-多线程弊端 1,新建线程会消耗内存空间和CPU时间
多线程管理
多线程管理
进程什么是进程
-进程是指在系统中正在运行的一个应用程序
-每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内
是CPU
分配资源和调度(执行任务)的最小单位
同一个进程内的线程共享进程的资源。
线程
什么是进程
-一个进程(程序)的所有任务都在线程中执行
线程是CPU
调用(执行任务)的最小单位
-作用
负责程序运行的内存分配 每一个进程都有自己的独立的虚拟空间
多线程
多线程的概念1个进程中可以开启多条线程,在同一时间,一个线程执行一个任务,CPU快速地在多条线程之间调度(切换)
1个线程中任务的执行是串行的
如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务
也就是说,在同一时间内,1个线程只能执行1个任务
总结:`要开多条线程,将耗时的操作放在子线程,主线程负责UI界面的刷新
-作用
执行路径 负责程序中代码实际执行
子线程的创建于销毁
当线程中的任务执行完毕后,由系统自动销毁,不需要我们销毁多线程的原理
同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)
1个进程中可以开启多条线程,在每个线程添加不同的任务
多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)
如果CPU调度线程的时间足够快,就造成了多线程并发执行的假象
注意
一条主线程占用内存中栈区1M, 子线程占用512KB线程不是无止境的开辟子线程
-多线程的优势:
1.充分利用多核优势,将不同线程的任务分配给不同的CPU执行,进入”并行”运算
2.将耗时的操作放到子线程中去执行,由主线程负责跟新主UI界面,是程序更加流畅,用户体验效果更佳
-多线程弊端 1,新建线程会消耗内存空间和CPU时间
多线程技术的本质
注意:多线程技术是为了并行执行多项任务,不是提高单个算法的本身效率
相关文章推荐
- LAMP下修改MariaDB的数据存储路径
- AM5728概述(5)
- java创建线程的两种方式
- 阅读工具与思考方式
- chapter8:Linux磁盘与文件系统管理之(5)swap的构建
- 拼音搜索
- Java学习笔记: 线程
- eclipse常用快捷键总结
- SSO CAS 单点登录 教程整理
- C++通过OCCI操作Oracle数据库详解
- 微项目: 联系人管理——知识与技术总结
- 360项目总结02
- 最近一段时间经历的事情即做事方式的总结
- matplotlib
- SQL Server三种表连接原理
- Oracle函数总结
- Linux 在后台运行程序
- React组件测试(模拟组件、函数和事件)
- Java中异常的细节
- UE快捷键以及常用技巧总结