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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
二值信号量和计数信号量的区别是什么?创建函数都是rt_sem_create,那么系统怎么区分我是二值还是计数?
, g" K# t* w2 }6 T假设我创建了一个 信号量如下
1 ~4 _* F! \1 p& H9 h7 Edynamic_key1 = rt_sem_create(“dsem_key1”, 0, RT_IPC_FLAG_FIFO);# l6 Z0 b+ x: E) Y
这个信号量是二值还是计数?
( ?, @* m5 p, h如果是二值我一直释放信号量会怎么样?
/ f# K4 v+ b+ c; }

该用户从未签到

2#
发表于 2022-10-27 11:23 | 只看该作者
他们没有区别吧,只是信号量的值只为 0和1,称为二值信号量
* J( R, ^7 P0 T+ t$ [

该用户从未签到

3#
发表于 2022-10-27 13:10 | 只看该作者
更多地是使用场景的区别:通常二值信号量用于事件同步,初值为0,等待事件到来;计数信号里用于资源计数,初值为资源数。
* f2 q: F4 w5 q4 h% r- S& l9 C

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-29 03:00 , Processed in 0.125000 second(s), 24 queries , Gzip On.

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

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

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