当前位置: 首页 > news >正文

ESP32开发之freeRTOS的互斥量

  • 什么是互斥量
  • 互斥量的应用场合
  • 互斥量的API函数
  • 基本代码结构
  • 互斥量使用举例
  • 递归锁
  • 递归锁举例
  • 总结
什么是互斥量

在freeRTOS中,多个任务访问一块共享资源,会产生竞争现象。

比如马路上只有一个很早以前的电话亭,A、B都想要打电话,然后他们就开始打架了。但是如果A先进去了然后把门锁了,B想进去打电话的话只能在外面等,必须等到A把门锁打开。

在这里插入图片描述

互斥量的应用场合

像freeRTOS的多任务系统,任务A正在使用某个资源,还没用完的时候,任务B也来使用,就可能会导致问题。

就比如串口,任务A正在用串口发送数据,此时任务B也来用这个串口发送数据,这样就会导致数据混乱。

简而言之,多任务使用共享资源的情况下,就需要使用互斥量了。

这里有个特别强调的注意点:按照正常的情况来说,只要任务A获取了互斥量,其他任务都无法释放互斥量才对。但

http://www.xdnf.cn/news/341731.html

相关文章:

  • 网络协议之DHCP和PXE分析
  • QT中多线程的实现
  • Rust包、crate与模块管理
  • 领域驱动设计(DDD)解析
  • 2025年4月AI算力领域热点事件全景报告
  • 配置Hadoop集群环境-使用脚本命令实现集群文件同步
  • 手撕基于AMQP协议的简易消息队列-1(项目介绍与开发环境的搭建)
  • uniapp|实现多终端聊天对话组件、表情选择、消息发送
  • onlyoffice 源码调试指南-ARM和x86双模式安装支持
  • 前端面试宝典---JavaScript import 与 Node.js require 的区别
  • uni-pages-hot-modules插件:uni-app的pages.json的模块化及模块热重载
  • JavaScript基础 (二)
  • 苍穹外卖(数据统计-图形报表)
  • QtGUI模块功能详细说明, 字体和文本渲染(四)
  • 单片机-STM32部分:8、外部中断
  • Mysql-OCP PPT课程讲解并翻译
  • 【并发编程】MySQL锁及单机锁实现
  • 【Android】动画原理解析
  • IT/OT 融合架构下的工业控制系统安全攻防实战研究
  • 【嵌入式开发-USB】
  • 王泫梓妍在户外拍摄的一组照片
  • 缓存套餐-03.功能测试
  • Spark缓存
  • 【前端基础】9、CSS的动态伪类(hover、visited、hover、active、focus)【注:本文只有几个粗略说明】
  • 5月8日星期四今日早报简报微语报早读
  • 【人工智能核心技术全景解读】从机器学习到深度学习实战
  • 什么是多模态大模型?为什么需要多模态大模型?
  • 兼具直连存储与分布式存储优势的混合存储方案
  • 轻量级证件照制作 AI 工具 HivisionIDPhotos 介绍
  • Android 查看 Logcat (可纯手机方式 无需电脑)