¿La condición da el efecto de tener múltiples conjuntos de espera por objeto?

Estoy leyendo sobre Condición enjava.util.concurrent.locks.Condition .

Las condiciones condicionan los métodos del monitor de objeto (esperar, notificar y notificar) en objetos distintos para dar el efecto de tener múltiples conjuntos de espera por objeto, combinándolos con el uso de implementaciones de bloqueo arbitrarias.

¿Alguien me puede explicar esto?

¿Cómo es esto un beneficio sobre los bloques o el método de sincronización normal?

Respuestas a la pregunta(3)

Su respuesta a la pregunta