package com.lovecoding.day14.thread04;

public class DiningHome {

    //有家餐馆的取餐口比较小，只能放10份快餐，厨师做完快餐放在取餐口的工作台上，
    //服务员从这个工作台取出快餐给顾客。现在有1个厨师和1个服务员。
    public static int count = 0;

    //厨师 生成快餐
    public synchronized  void put(){
        //只能放10份快餐
        if (count >= 10){
            try {
                //等待
                wait();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        System.out.println(Thread.currentThread().getName()+"-生产:"+count+"份");
        //生产
        count++;
        //通知
        notify();
    }

    //服务员取餐
    public synchronized  void take(){
        //只能取到0
        if (count <= 0){
            try {
                //等待
                wait();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        System.out.println(Thread.currentThread().getName()+"-消费:"+count+"份");
        //消费
        count--;
        //通知
        notify();
    }

}
