Если сервер никогда не отправит EOF, будет ли зависать InputStream.read?
Как установить тайм-аут чтения?
Как насчет установки таймаута сокета. Он устанавливает время ожидания для всех операций чтения в этом сокете