Linux系统编程day5知识点总结回顾2


在这里插入图片描述

1.消费者和生产者模型

1.1 没加锁情况

框架先搭起来
在这里插入图片描述
生产者代码
在这里插入图片描述
消费者代码
在这里插入图片描述

1.2 加 条件变量 与 互斥锁 代码

在这里插入图片描述
主函数 创建 条件变量互斥锁
在这里插入图片描述
生产者加锁 保护共享变量
在这里插入图片描述
生产者解除阻塞函数
在这里插入图片描述
消费者
在这里插入图片描述

2.信号量相关

2.1 互斥锁 和 信号量 对比

在这里插入图片描述

2.2 信号量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 使用 信号量 完成生产者和消费者模型

3.1 实现思路

在这里插入图片描述

3.2 实现代码

头文件
在这里插入图片描述
主函数
在这里插入图片描述
生产者
在这里插入图片描述
消费者
在这里插入图片描述

4. 练习:哲学家就餐问题思路

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_40858438/article/details/88422824