public class depot { private int depotSize; //Warehouse Size private Lock lock; //exclusive lock public depot () { depotsize = 0; lock = new reentrantlock (); } / ** * Goods warehousing * @param value */ public void put (int Value) { try { &nbSp; lock.lock (); depotSize += value; system.out.println (Thread.CurrentThread (). GetName () + " put " + value +" ----> the depotSize: " + depotsize ); } finally{ lock.unlock (); } } /** * Merchandise out of the library * @param value */ public Void get (int&Nbsp;value) { try { lock.lock (); depotSize -= value; system.out.println (Thread.CurrentThread (). GetName () + " get " + value + " ----> the depotSize: " + depotsize); } finally{ lock.unlock (); } } }
Producers, produce goods, add goods to the warehouse: [Java] view plain copy print? public class Producer {private Depot Depot; Public Producer (Depot Depot) {this.depot = Depot; The public void produce (final int value) {new Thread () {public void run () {&NB