ok, dovrei aver risolto.. la stanchezza e la scarsa chiarezza delle dispense del prof mi avevano creato un equivoco sulla notifyAll ^_^

in pratica quando un thread lettore (legge dal SUO input stream) aggiorna la struttura dati condivisa, fa una notifyAll che sveglia tutti i thread scrittori che però non si ostacolano a vicenda in quanto scrivono tutti su un proprio output stream...

dovrebbe essere così, se confermate è meglio.. ma dovrebbe essere così