找回密码
 注册
关于网站域名变更的通知
查看: 314|回复: 3
打印 上一主题 下一主题

二值信号量和计数信号量的区别是什么?系统怎么区分是二值还是计数呢

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-10-27 10:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
二值信号量和计数信号量的区别是什么?创建函数都是rt_sem_create,那么系统怎么区分我是二值还是计数?
( d; n. B% H# {& S" g$ m) U: S3 _: ~& Y假设我创建了一个 信号量如下
; s( f- ]* {3 @# J9 b: O( l3 c% ~dynamic_key1 = rt_sem_create(“dsem_key1”, 0, RT_IPC_FLAG_FIFO);* x4 V* P6 @+ K1 I$ O4 B  s
这个信号量是二值还是计数?
7 ?) ?  R! _* y1 B) u如果是二值我一直释放信号量会怎么样?
/ g5 H. u9 p" g8 A- J

该用户从未签到

2#
发表于 2022-10-27 11:23 | 只看该作者
他们没有区别吧,只是信号量的值只为 0和1,称为二值信号量* v  [; e7 |) i7 m& |

该用户从未签到

3#
发表于 2022-10-27 13:10 | 只看该作者
更多地是使用场景的区别:通常二值信号量用于事件同步,初值为0,等待事件到来;计数信号里用于资源计数,初值为资源数。
* g& p" I; F/ E

该用户从未签到

4#
发表于 2022-10-27 13:22 | 只看该作者
基本没有区别,就是数量上有区别,二值就是0或1两个值,计数范围就大了。! [$ \* \& P7 J" o
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-9-8 10:10 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表