用信号量实现读者和写者问题

1. 基本信息

姓名 学号 班级 是否编译成功 是否运行结果正确(逻辑也要正确)
是/否 是/否

如果代码运行不正确,写报告时,呈现所做的努力,按以下格式来写:

# 2.  做了什么
# 3.  碰到什么样的问题
# 4. 针对遇到的问题,你做了哪些努力

如果运行结果正确,按以下方式来写:

  • 结合关键代码,解释代码背后的原理(对于别人不能一眼就能明白你代码要做什么的,你要给出解释)
  • 给出测试结果,并解释运行结果
  • 文末,再给出完整的代码

以下是代码运行正确的报告格式:

2. 循环队列

2.1 循环队列实现

结构体定义



插入一个数



删除一个数



2.2 循环队列测试

你是怎么测试你写的循环队列,确保没问题?给出测试的关键代码,及测试结果。

3. 利用信号量解决生产者和消费者问题

3.1 信号量创建及初始化

3.2 生产者

3.3 消费者

3.4 主函数(创建生产者和消费者各10个线程)

3.5 测试

4. 如果不加锁,会如何

把生产者和消费者的加解锁去掉,再次运行代码,有报错吗?给出实验结果。

5. 实验过程中遇到的问题及解决方法

6. 附完整源代码

本文系Spark & Shine原创,转载需注明出处本文最近一次修改时间 2022-05-26 10:02

results matching ""

    No results matching ""