完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
如题,初学ucos,在看书看得任务同步这一章节时候,文章是这么写的:OSSemPost发布信号量时,参数设置OS_OPT_POST_ALL,可以对所有等待该信号量的任务进行广播,这样所有等待该信号量的任务都变成了就绪态
有个疑问,假如有3个任务ABC同时等待同一个信号量,这时候ISR广播了信号量,优先级最高的任务A会先运行, A得到了信号量之后OSSemPend就把信号量减1了, 这时候BC任务切换时是否还是得不到信号量继续阻塞? 这种问题其实完全可以自己实验,但是手上现在没有环境和资源,又急着想知道,求高手指点 谢谢 |
|
相关推荐
1个回答
|
|
|
调用函数OSSemPost()发送信号量的时候如果选择参数OS_OPT_POST_ALL,可不是给信号量值加一!而是加上等待这个信号量的任务数!所以你A任务Pend一次不可能将信号量pend完。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
1018 浏览 1 评论
1849 浏览 0 评论
1830 浏览 1 评论
3254 浏览 5 评论
3581 浏览 9 评论
1019浏览 1评论
1848浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1358浏览 1评论
1850浏览 0评论
1175浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 16:01 , Processed in 0.693983 second(s), Total 74, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2451