进程与线程

Posted kolane

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程与线程相关的知识,希望对你有一定的参考价值。

目录

  1. 计算机的核心是CPU,CPU承担了所有的计算任务

  2. 一个CPU核心一次只能执行一个任务,多个CPU核心可以同时执行多个任务

  3. 一个CPU一次只能执行一个进程,其他进程处于非运行状态

  4. 进程中包含的执行单元叫线程,一个进程可以包含多个线程。

  5. 一个线程中内存空间是共享的,每个进程里的线程都可以使用这个共享空间,一个线程在使用这个共享空间的时候,其他线程必须等它结束。

  6. 通过“锁”实现,作用就是防止多个线程使用这个内存空间,先使用的线程会将空间上锁,其他线程就在门口等待,打开锁再进去。

  7. 进程:表示程序的一次执行

  8. 线程:CPU运算的基本调度单位

  9. GIL:全局解释器锁,Python里面的通行证,而且只有一个,拿到通行证的线程才可以执行。

  10. Python的多线程试用范围:大量密集的I/O处理

  11. Python的多进程:大量的密集并行计算

  12. 线程的概念

    (1)进程内的一个执行单元

    (2)操作系统中一个可调度的实体

    (3)进程中相对独立的一个控制流序列

    (4)执行时的现场数据和其他调度所需的信息。

  13. 再论main函数

    (1)C/C++程序被执行后从main函数开始运行。

    (2)其运行过程:

    (3)线程是进程使用CPU资源的基本单位。

  14. 深入理解进程和线程

    (1)进程中可以存在多个线程并行执行,共享进程资源

    (2)线程是被调度的执行单元,而进程不是调度单元。

    (3)线程不能脱离进程单独存在,只能依赖于进程运行。

    (4)线程有生命期,有诞生和死亡。

    (5)任意线程都可以创建其它新的线程。

  15. 小结

    (1)程序是物理存储空间中的数据文件

    (2)进程程序运行后得到的执行实体

    (3)线程是进程内部的具体执行单元

    (4)一个进程内部可以有多个线程存在

    (5)进程是操作系统资源分配的基本单位

    (6)线程是操作系统调度执行的基本单位

以上是关于进程与线程的主要内容,如果未能解决你的问题,请参考以下文章

Android中线程与线程,进程与进程之间如何通信?

JAVA线程与线程进程与进程间通信

OS——进程与线程

OS——进程与线程

OS——进程与线程

OS——进程与线程