24小时热门版块排行榜    

查看: 2018  |  回复: 25
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

X_huu

金虫 (小有名气)

[交流] 互斥量mutex的使用问题

书上说:在生产者——消费者问题中,用互斥量mutex的值0和1表示缓存区是否加锁,函数down(&mutex)使mutex值减1,up(&mutex)使mutex增1。

那么如图中代码,为什么这段生产者和消费者的代码都是执行down操作然后再执行up呢?这意思岂不是说:进入临界区后不加锁,执行完以后再加锁,这样的话岂不是该进程运行时其他进程都可以进入临界区了?

不应该是反过来:进入临界区以后执行up加锁,退出的时候执行down解锁吗?

求请大神指教!!

互斥量mutex的使用问题
360桌面截图20161127113604.jpg
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

X_huu

金虫 (小有名气)

22楼2016-11-29 15:16:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 26 个回答

sony8620

铁杆木虫 (文学泰斗)


X_huu(金币+1): 谢谢参与
7楼2016-11-27 12:18:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

X_huu(金币+1): 谢谢参与
12楼2016-11-27 12:38:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见