独望枫

人在尘世间,有缘自相见,变化千千万,未开窍,已迷恋
posts - 43, comments - 0, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

FreeRTOS 线程间同步之互斥量

Posted on 2021-07-14 02:04 小菜枫 阅读(337) 评论(0)  编辑 收藏 引用 所属分类: 学习笔记
互斥量是一种特殊的信号量!!!
- 所以其句柄依然是xSemaphoreHandle类型

1、创建互斥量



2、使用互斥量



3、运行结果

可以看到后面都是任务2的信息在输出,这是因为任务2的优先级最高,它释放了互斥量后,马上又获取到,其他两个任务饿死了……
修改:增加一个切换时间片或者阻塞的状态到释放完互斥量后面



4、验证结果:可以看到任务二还是最常被系统调度运行的,因为其优先级高,而任务1/3则看系统调度,因为他俩优先级一致,按官方文档说法,优先级一致的情况下,会优先调度等待时间长的任务

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理