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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
二值信号量和计数信号量的区别是什么?创建函数都是rt_sem_create,那么系统怎么区分我是二值还是计数?
. H+ A4 @* v' r& M9 B假设我创建了一个 信号量如下
( h4 v1 y2 d2 U/ ]. Ydynamic_key1 = rt_sem_create(“dsem_key1”, 0, RT_IPC_FLAG_FIFO);$ }. A; ^3 q. _( }7 c. n0 d) ?$ \9 _0 x
这个信号量是二值还是计数?
( L2 r1 ^  ~  R/ t) t+ U5 |* m9 s如果是二值我一直释放信号量会怎么样?
* `! R1 ?5 h: r

该用户从未签到

2#
发表于 2022-10-27 11:23 | 只看该作者
他们没有区别吧,只是信号量的值只为 0和1,称为二值信号量8 F0 I" n/ U6 e5 W2 A# e& @

该用户从未签到

3#
发表于 2022-10-27 13:10 | 只看该作者
更多地是使用场景的区别:通常二值信号量用于事件同步,初值为0,等待事件到来;计数信号里用于资源计数,初值为资源数。+ \; d% w% x& N1 H+ c8 P

该用户从未签到

4#
发表于 2022-10-27 13:22 | 只看该作者
基本没有区别,就是数量上有区别,二值就是0或1两个值,计数范围就大了。
% o. f' L# I' _
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 14:49 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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