La idea de este código es implementar conceptos de multithreading en una ronda de mates: hay un cebador y todos los amigos quieren tomar 3 mates. Cada uno de los amigos tiene su thread. Usa semáforos y sincronización para lograrlo. También usan una bolsa de facturas (o bizcochos) que comparten entre todos los hilos.