15_进程间通信7-POSIX信号量

在这里插入图片描述
命名信号量和未命名信号量

在这里插入图片描述

创建或使用一个现有信号量

在这里插入图片描述
释放信号量资源

在这里插入图片描述
销毁一个命名信号量

在这里插入图片描述
信号量 sem_unlink 与 sem_close 的主要区别在于它们对信号量的处理方式不同。‌
sem_close 函数用于关闭一个已经打开的信号量。‌关闭操作只是简单地结束了调用进程与信号量之间的关联,‌而信号量本身在系统中仍然存在。‌这意味着,‌即使调用了 sem_close,‌信号量也不会立即从系统中被删除,‌只要还有其他进程仍然使用该信号量1。

sem_unlink 函数则用于当一个命名信号量不再需要时,‌将其从系统中删除。‌这个操作会导致系统立即释放与该命名信号量相关的资源。‌当调用 sem_unlink 时,‌如果系统中没有其他进程再使用该命名信号量,‌那么该信号量就会被彻底地从系统中移除2。

简而言之,‌sem_close 只是断开了调用进程与信号量的关联,‌而 sem_unlink 则是从系统中彻底移除了信号量,‌确保了资源的有效利用和避免闲置的信号量组占用系统资源

获取信号量的三种方法

在这里插入图片描述

归还信号量

在这里插入图片描述
在单个进程中使用未命名信号量

在这里插入图片描述
丢弃未命名信号量
在这里插入图片描述
检索信号量值

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux老A

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值