【牛客带你学编程Java方向】项目练习第6期(截止5.2)
Java方向活动帖:【牛客带你学编程】【Java方向】0基础小白入门培养计划!
牛客带你学编程活动总贴:【牛客带你学编程】0基础小白入门培养计划!
Java项目练习:第6期
练习时间:4月16日-5月2日(2周,劳动节顺延)
活动规则:
活动规则:
- 每一期一个项目,届时会开新帖发布
- 学员直接将答案提交到该贴评论区即可
- 两周后,公布导师参考答案
- 导师评选出当期最佳代码(将被设置为精彩回复)
奖励:牛客大礼包一份(牛客定制水杯 牛客定制笔 牛客定制程序员徽章 滑稽抱枕)
参与方式:直接将你的代码回复到本帖评论区
-----------------------------------------------------
本期题目:
实现生产者消费者模型(60分钟)
需求描述:
在一个系统中,存在生产者和消费者两种角色,他们通过内存缓冲区进行通信,生产者生产消费者需要的资料,消费者把资料做成产品,先要求模拟实现一个生产者消费者模型,具体要求如下:
- 生产者与消费者线程独立,通过不同线程实现
- 内存缓冲区为空的时候消费者必须等待,而内存缓冲区满的时候,生产者必须等待
- 多线程对临界区资源的操作时候必须保证在读写中只能存在一个线程
考查知识点:
- Java多线程的概念及其基本使用方法
- 并发同步与互斥基础
- 集合类与并发集合的高级特性
参考知识点:《java基础入门》第5章、第7章
参与方式:直接将你的代码回复到本帖评论区