Java多线程模拟生产者和消费者模式
很久没有更新了,我又回来啦,因为之前也是蛮忙的,线程还是很有意思的,并且也是很重要,所以我就把这个有意思的案例分享粗来!
1.需求:
- 仓库采用list集合
- 仓库只能存储一个元素,一个元素就表示存满了
- 集合中元素个数为0,就表明仓库空了
- 保证List集合中永远最多只能存储一个元素
- 创建生产线程 Producer
public class Producer implements Runnable{
private List list;
public Producer(List list) {
this.list = list;
}
@Override
public void run() {
/*
* 通过死循环模拟生产者
* */
while (true){
//给仓库加锁
synchronized (list){
if(list.size()>0){
try {