1.蜜蜂和熊的生产消费关系,熊在蜂蜜满10斤吃掉。蜜蜂一次生产一斤蜂蜜,且蜜蜂生成一斤蜂蜜花费的时间是10s。

  十只蜜蜂和两只熊。

package com.yehomlab;import java.util.ArrayList;import java.util.List;class Bear implements  Runnable {    List
 list;    public Bear(List
 list){     this.list=list;    } public void run() { while(true){ synchronized(list){ int size=list.size(); if(size==0){ try { System.out.println("没蜜了快点采蜜去!"); list.wait(); } catch (Exception e) { } } else if(size>0 && size<10){ try { System.out.println("装满十个我再吃"); list.wait(); } catch (Exception e) { } } else if(size==10){ Integer i=list.remove(0); System.out.println("吃蜜喽"); list.notifyAll(); } } //yield(); } } }class Bee implements Runnable { final static int MAX=10;    List
 list; public Bee(List
 list){ this.list=list; } public void run() { int i=1; while(true){ synchronized (list) { int size=list.size(); if(size>=MAX){ try { list.wait(); } catch (Exception e) { } } else if(size
 list =new ArrayList
(); Bear B1 = new Bear(list); Bear B2 = new Bear(list); Bee  E1 = new Bee(list); Bee  E2 = new Bee(list); Bee  E3 = new Bee(list); Bee  E4 = new Bee(list); Bee  E5 = new Bee(list); Bee  E6 = new Bee(list); Bee  E7 = new Bee(list); Bee  E8 = new Bee(list); Bee  E9 = new Bee(list); Bee  E10= new Bee(list); new Thread(B1).start(); new Thread(B2).start(); new Thread(E1).start(); new Thread(E2).start(); new Thread(E3).start(); new Thread(E4).start(); new Thread(E5).start(); new Thread(E6).start(); new Thread(E7).start(); new Thread(E8).start(); new Thread(E9).start(); new Thread(E10).start(); }}