进程与线程

进程

进程是启动一个程序时,操作系统会为其创建一块内存,用来存放代码、运行中的数据和一个执行任务的主线程,这样的运行环境为进程。

单进程与多进程

单进程浏览器
单进程浏览器所有功能模块都是运行在同一个进程中,而这样会导致其不稳定、不流畅、不安全。
● 不稳定:单进程很容易崩溃,导致全部功能失效,因为功能都绑定在一个进程上
● 不流畅:当一个进程被阻塞,就会出现浏览器整体的卡顿
● 不安全:通过C/C++写的插件可以对系统执行写入与读取,对信息造成危害
多进程浏览器
解决了不稳定、不流畅、不安全:
● 稳定:多进程分工,每个进程处理不同的功能模块,当一个进程崩溃后、其他模块的进程仍处于工作状态,不会导致浏览器的卡死。
● 流畅:当一个进程被阻塞,其他页面的进程并不会受到影响,所以除了阻塞进程页面,其他页面都是正常状态。
● 安全:通过安全沙箱,将主进程之外的进程放进安全沙箱,有效阻止一部分功能模块对系统进行有害操作。

多进程功能模块
浏览器进程:负责页面显示、子进程管理、用户交互、提供存储等功能。
渲染进程:将HTML、CSS、JavaScript转化为用户观察交互的页面。放于安全沙箱中。
GPU进程:负责3D绘画。
网络进程:主要负责页面的网络资源加载。
插件进程:负责插件的运行。

线程

线程是进程的基本单位,由进程启动和管理。线程依附于进程,而进程中使用多线程并行处理能提升运算效率。线程是不能单独存在的,它是由进程来启动和管理的
线程依附于进程,且进程中使用多线程并行处理来提升运算效率
特点
● 进程中任意线程出错,会导致整个进程崩溃
● 线程之间共享进程数据
● 进程关闭后,操作系统会回收进程所占用内存
● 进程之间内容相互隔离

单线程与多线程

单线程
一个线程处理一个任务,单线程会将一步一步的处理代码块
A->B->C->D
多线程
A->B
C->D
多线程仅需要两步

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值