Parte I — Productor/Consumidor con wait/notify (y contraste con busy-wait) Ejecutar con busy-wait (alto CPU) mvn -q -DskipTests exec:java -Dexec.mainClass=edu.eci.arsw.pc.PCApp \ -Dmode=spin -Dproducers=1 -Dconsumers=1 -Dcapacity=8 -DprodDelayMs=50 -DconsDelayMs=1 -DdurationSec=30 Ejecutar con monitores (uso eficiente de CPU) mvn -q -DskipTests exec:java -Dexec.mainClass=edu.eci.arsw.pc.PCApp \ -Dmode=monitor -Dproducers=1 -Dconsumers=1 -Dcapacity=8 -DprodDelayMs=50 -DconsDelayMs=1 -DdurationSec=30 Escenarios a validar Productor lento / Consumidor rápido → consumidor debe esperar sin CPU cuando no hay elementos. Productor rápido / Consumidor lento con límite de stock → productor debe esperar sin CPU cuando la cola esté llena (capacidad pequeña, ej. 4 u 8). Visualiza CPU con jVisualVM y compara mode=spin vs mode=monitor.