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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
二值信号量和计数信号量的区别是什么?创建函数都是rt_sem_create,那么系统怎么区分我是二值还是计数?
% d7 f+ U( Q" w, O4 G, s2 [假设我创建了一个 信号量如下
) Z9 @6 g; T0 ^# ^) P) Qdynamic_key1 = rt_sem_create(“dsem_key1”, 0, RT_IPC_FLAG_FIFO);4 A* m7 ?5 ^6 t2 ]+ k+ Y
这个信号量是二值还是计数?' D, F( l$ W$ z$ |4 Z  ]$ y" O
如果是二值我一直释放信号量会怎么样?1 n, q; r2 G. f7 Y- x7 E

该用户从未签到

4#
发表于 2022-10-27 13:22 | 只看该作者
基本没有区别,就是数量上有区别,二值就是0或1两个值,计数范围就大了。6 u. R1 Q( s( G" C

该用户从未签到

3#
发表于 2022-10-27 13:10 | 只看该作者
更多地是使用场景的区别:通常二值信号量用于事件同步,初值为0,等待事件到来;计数信号里用于资源计数,初值为资源数。
$ D9 Q) t* U# K; M- x7 [

该用户从未签到

2#
发表于 2022-10-27 11:23 | 只看该作者
他们没有区别吧,只是信号量的值只为 0和1,称为二值信号量3 k# h) ]- a+ _& h8 R3 X
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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