Logo Studenta

AlmacenPiezas

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

package Ejer05_06_05;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
public class AlmacenPiezas {
	public static int MAX_PIEZAS = 5;
	
	private List<BlockingQueue<Double>> colas;
	
	public AlmacenPiezas(int numTiposPiezas) {
		colas = new ArrayList<BlockingQueue<Double>>();
		for (int i=0; i<numTiposPiezas; i++) {
			colas.add(new LinkedBlockingQueue<Double>(MAX_PIEZAS));
		}
	}
	
	public void almacenarPiezas(int tipoPieza, double pieza) throws InterruptedException{
		colas.get(tipoPieza).put(pieza);
	}
	
	public double recogerPieza(int tipoPieza) throws InterruptedException {
		return colas.get(tipoPieza).take();
	}
}

Otros materiales