Hola, buenas tardes,
No sé si ya se discutió en la clase teórica sobre un posible error que hay en la solución propuesta al problema de lectores-escritores, pero, leyéndola, me di cuenta de que tranquilamente puede darse el caso en el que los lectores que se hayan bloqueado sean despertados a pesar de que haya escritores bloqueados, cuando claramente esta es una condición bloqueadora de lectores. Pues, cuando un escritor termina de escribir, se fija únicamente si hay lectores bloqueados y, en caso de ser así, despierta a uno.
¿No debería preguntarse también si la cantidad de escritores bloqueados es 0 para despertar a los lectores? No sé, quizás entiendo mal el tema y realmente no tienen por qué esperar a que las condiciones que hacían que se bloqueen sean todas falsas, pero se me hace raro que, al ser estas justamente condiciones del if por las cuales estos lectores se bloquean, puedan despertarse a pesar de que alguna de esas condiciones siga siendo verdadera.
Desde ya, muchas gracias y saludos.