Mi sono dimenticato di dirti che il PrintWriter va creato con l'autoFlush a true, vedi costruttori.Originariamente inviato da cassiosteel
ma non cambia niente...
Se l'autoFlush è true, allora println/printf/format causano il flush, altrimenti no. È tutto scritto nella documentazione javadoc di PrintWriter, comunque. E quando hai problemi di comunicazione di questo tipo (quando "sembra" che non invii e dall'altra non riceva), al 90% sono questioni di flushing.