多任务并行之一 进程和线程基础

1、了解计算机内部机制

在多线程学习之前,需要知道计算机程序的执行是由单个步骤序列组成的,该序列在主机的CPU中安装同步顺序执行。无论是任务本身需要按照步骤顺序执行,还是整个任务包含多个子任务,都需要按照这种顺序方式执行。

而多线程编程的优点可以体现在:

  • 本质上是异步工作的任务;
  • 需要多个并发活动;
  • 每个活动的处理顺序可能是不确定的,或者说是随机的、不可预测的;

这种编程任务可以被组织或划分成多个执行流,其中每个执行流都有一个指定要完成的任务。根据应用场景不同,这些子任务需要计算出中间结果,然后合并成最终结果。

2、进程

计算机程序只是存储在磁盘上的可执行二进制(或其他类型)的文件,只有把它们加载到内存中并被操作系统调用,才拥有其生命期。
进程则是一个执行中的程序,每个进程都拥有自己的地址空间,内存,数据栈以及其他用于跟踪执行的辅助数据。操作系统管理其上所有进程的执行,

3、线程

线程(有时也就轻量级进程)与进程类似,不过它们是在同一个进程下执行的,并共享相同的上下文。

Guess you like

Origin blog.csdn.net/Zhaopanp_Crise/article/details/102989322