生产者/消费者问题、线程池笔记
生产者消费者共享统一资源,两者之间相互依赖、互为条件。
wait()线程等待,知道其他线程释放锁;
wait(long timeout)等待指定毫秒数;
notify()唤醒一个处于等待队列的线程;
notifyAll()唤醒同一对象上所有调用wait()方法的线程,优先级搞得线程优先调度;
注意:均是Object类的方法,都只能在同步方法或同步代码块中使用,否则会抛出异常
llegalMonitorStateException.
管程法
 package com.company;
 //测试:生产者消费者模型----> 管程解决
 
 
 import oracle.jrockit.jfr.ProducerDescriptor;
 
 import java.sql.SQLOutput;
 import java.util.function.Consumer;
 
 public class TestPC {
     public static void main(String[] args) {
         SynContainer container = new SynContainer();
         new Producter(container).start();
         new Comsumers(container).start();
 
     }
 }
 
 //生产者
  class Producter extends Thread {
     SynContainer container;//生产者有一个容器;
     Producter(SynContainer synContainer){//构造时传入容器
         this.container=synContainer;
     }
 
     