El bucle no ve el valor cambiado por otro hilo sin una declaración de impresión

En mi código tengo un bucle que espera a que se cambie algún estado desde un hilo diferente. El otro hilo funciona, pero mi bucle nunca ve el valor cambiado. Espera por siempre. Sin embargo, cuando pongo una System.out.printlndeclaración en el bucle, ¡de repente funciona! ¿Por qué? El...