美文网首页
进程与线程

进程与线程

作者: 明里人 | 来源:发表于2019-08-20 13:56 被阅读0次

原文:https://www.jianshu.com/p/83c481a8bcef

进程( process ):当你的程序一旦被载入到内存中执行,那么你的这段程序就是一个进程。一个或多个进程组成系统中运行的应用程序。另外系统也会为应用的每一个进程分配独立的CPU和内存等资源。

进程是系统分配资源的最小单位。

线程 ( thread ):进程中执行的每一个任务指的就是线程,系统不会为其分配内存资源,各个线程共享进程拥有的内存资源。

进程和线程的关系:
1、内存对资源分配的最小单位是进程,而进程执行的最小单位是线程。
2、一个程序至少有一个进程,一个进程至少有一个线程。
3、线程是不能够脱离进程而独立运行的。
4、当你的进程运行时只产生了一个线程,被称为单线程,否则被称为多线程。(JavaScript是单线程,同一时间只能做一件事。它用途在于与用户交互,以及操作DOM,决定了它是单线程)
5、单线程和多线程都是指在同一进程中的单或多线程。
6、线程越多意味着你在一个进程中同时执行的任务也就越多。

举例:
1、假如进程为一家公司,那么线程指的是为公司服务的员工。
2、公司拥有自己独立的办公空间,员工共享公司的办公空间。
3、一家公司至少有一名员工,而员工也必须有一家自己所属的公司。
4、一位员工需要一件件的去完成工作,多位员工可以协调完成工作。
再来归纳下概念:
1、公司:进程
2、员工:线程
3、公司有一个员工:单线程
4、公司有多名员工:多线程
5、一位员工需要独立完成工作:单线程需要按照程序的顺序依次执行,也就是说只有前面的处理好,后面的才会得到执行。
6、多位员工协调完成工作:多个线程在进程中协作完成任务,从而可以最大程度的使用内存资源。
7、拥有独立办公空间:进程之间独立拥有系统所分配的内存资源
8、员工共享公司办公空间:线程没有自己的内存资源,多个线程共享进程的内存资源

CPU:CPU (中央处理器)是计算机的核心配件,它的作用相当于我们人类的大脑,负责对数据进行运算和处理。
内存:与CPU进行沟通的桥梁。数据只能通过内存这座桥梁到达CPU,前提是CPU为空闲状态,否在必须在内存这座桥梁上等待。

1、当内存不足时,系统会自动从硬盘上划分出一部分空间来扩充内存,这一部分内存就是常说的虚拟内存。虚拟内存的读写能力与真正的内存相差很远,所以当内存不足时,硬盘会一直响。
2、数据如果在内存当中由于某种原因未被释放或无法释放(该数据即是内存泄漏数据),势必会造成内存的浪费,由此造成内存运行速度减慢,甚至崩溃。
我们安装的应用都是在内存中运行的,然后在CPU中处理,如果没有内存,CPU无法接收到数据。

浏览器之所以能够打开并运行,是因为系统为其进程分配了CPU与内存资源。浏览器是多进程,每打开一个tab页,均被视为创建了一个进程(浏览器所有的空白tab页属于一个进程)。

相关文章

  • iOS_进程与线程(多进程与多线程)

    iOS_进程与线程(多进程与多线程)

  • Java 线程相关

    目录1.并行与并发2.进程与线程---- 2.1 进程---- 2.2 线程---- 2.3 进程与线程的区别--...

  • 并发编程之进程与线程

    并发编程之进程与线程 2.1 线程与进程 2.1.1 进程 2.1.2 线程 2.1.3 二者对比 2.2 并行与...

  • 进程与线程、线程池

    进程与线程的相关总结进程与线程的简单解释进程: 基本的资源分配资源线程: 最小调度单元 线程安全 线程安全是多线程...

  • 详解iOS面试:进程与线程

    进程与线程 进程 = 资源管理 + 线程, 进程是资源分配单位,线程是 CPU 调度单位 以前没有线程的时候,进程...

  • Python多线程与多进程

    内容简述: 线程与进程的相关概念1、程序,进程,线程,多进程,多线程2、线程的生命周期3、并行与并发,同步与异步4...

  • OpenMP笔记

    进程与线程 进程:进程是正在运行的程序实例线程:线程是进程中实际运作单位,一个进程可以并行多个线程 进程包含如下程...

  • java面试3

    1. 进程与线程的区别? 进程和线程的关系: 进程与线程的区别: 2.struts2和springMVC的区别? ...

  • 22.iOS底层学习之多线程原理

    本篇提纲:1、线程与进程2、多线程3、多线程相关面试题4、线程安全问题5、线程与runloop的关系 线程与进程 ...

  • GO学习笔记(18) - 并发编程(1) - 理解gorouti

    目录 进程、线程与协程 并发模模型介绍 GO并发编程介绍 进程、线程与协程 进程和线程 进程是程序在操作系统中的一...

网友评论

      本文标题:进程与线程

      本文链接:https://www.haomeiwen.com/subject/odfpsctx.html