原理收藏-技术篇java一些收藏

进程、线程、协程、并发、并行 概念介绍

2020-02-13  本文已影响0人  码二哥

1、进程/线程

1.1、进程

是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。

1.2、线程

是进程的一个执行实体,是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。

一个进程可以创建撤销多个线程,同一个进程中的多个线程之间可以并发执行。

2、并发/并行

2.1、并发

多线程程序在核心的 cpu 上运行,称为并发

2.2、并行

多线程程序在核心的 cpu 上运行,称为并行

2.3、并发并行区别?

并发与并行并不相同,

并发主要由切换时间片来实现“同时”运行,

并行则是直接利用多核实现多线程的运行,Go程序可以设置使用核心数,以发挥多核计算机的能力。

2.4、上下文

并发意味着程序运行时多个执行上下文,对应着多个调用栈

3、协程/线程

3.1、协程

协程:独立空间,共享空间,调度由用户自己控制,本质上有点类似于用户级线程,这些用户级线程的调度也是自己实现的。

3.2、线程

线程:一个线程上可以跑多个协程,协程是轻量级的线程。

上一篇下一篇

猜你喜欢

热点阅读