【嵌入式学习3】多任务编程

目录

1、多任务

并发:在一段时间内交替去执行任务

并行:

2、线程

进程与线程

守护线程


1、多任务

同一时间内 执行多个任务, 多任务分为并发和并行两种形式

并发:在一段时间内交替去执行任务

软件1执行0.01秒,切换到软件2,软件2执行0.01秒,再切换到软件3,执行0.01秒......这样反复执行下去。表面上看,每个软件都是交替执行的,实际上是由于CPU的执行速度块,就像这些软件都在同时执行一样,这里需要注意单核cpu是并发的执行多任务的。

并行:

对于多核cpu处理多任务,操作系统会给cpu的每个内核安排一个执行的软件,多个内核是真正的一起执行软件多核cpu是并行的执行多任务,始终有多个软件一起执行。

2、线程

多任务开发,有多种实现方式,从资源占用大小排序:进程 > 线程 > 协程

进程与线程
  • 进程是分配资源的基本单位, 一旦创建一个进程就会分配一定的资源,
  • 线程是cpu调度的基本单位,每个进程至少都有一个线程,而这个线程就是我们通常说的主线程。
守护线程

守护线程是一种在后台运行的线程,它不会阻止程序的退出。当程序中所有的非守护线程(用户线程)都结束运行后,程序会自动退出,而不会等待守护线程完成。守护线程通常用于为程序提供服务,比如清理资源、监控程序状态等。

相关推荐
非凡ghost4 分钟前
PowerDirector安卓版(威力导演安卓版)
android·windows·学习·软件需求
Sylvia-girl10 分钟前
IO流~~
java·开发语言
risc12345625 分钟前
认识一个事物,需要哪些基本能力与要素?
笔记
Re.不晚26 分钟前
JAVA进阶之路——无奖问答挑战3
java·开发语言
代码游侠27 分钟前
C语言核心概念复习——C语言基础阶段
linux·开发语言·c++·学习
㓗冽36 分钟前
60题之内难题分析
开发语言·c++·算法
dingdingfish44 分钟前
Bash学习 - 第3章:Basic Shell Features,第5节:Shell Expansions
开发语言·学习·bash
rainbow68891 小时前
C++开源库dxflib解析DXF文件实战
开发语言·c++·开源
deepxuan1 小时前
Day7--python
开发语言·python
firewood20241 小时前
共射三极管放大电路相关情况分析
笔记·学习