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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
二值信号量和计数信号量的区别是什么?创建函数都是rt_sem_create,那么系统怎么区分我是二值还是计数?
' ?. x  l# H2 H  X% E假设我创建了一个 信号量如下
6 T9 @1 i. s4 tdynamic_key1 = rt_sem_create(“dsem_key1”, 0, RT_IPC_FLAG_FIFO);6 }) @' x  T5 d% T: z
这个信号量是二值还是计数?
  t3 q+ P+ G  X* o9 R+ }0 |1 `如果是二值我一直释放信号量会怎么样?
3 Y# j. T) p% ]% a/ o, O* _' l3 b/ |

该用户从未签到

2#
发表于 2022-10-27 11:23 | 只看该作者
他们没有区别吧,只是信号量的值只为 0和1,称为二值信号量
8 @% p3 D* b) c( O

该用户从未签到

3#
发表于 2022-10-27 13:10 | 只看该作者
更多地是使用场景的区别:通常二值信号量用于事件同步,初值为0,等待事件到来;计数信号里用于资源计数,初值为资源数。9 b4 Y! A' A3 S5 ]6 S

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 15:42 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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