InputStream и OutputStream буферизируются в Java - PullRequest
1 голос
/ 06 апреля 2019

У меня есть клиент-серверная программа, в которой я использую InputStream для чтения с socket (сервер) и OutputStream для записи в socket (клиент).Мой сервер переходит в режим сна на 10 секунд каждый раз, когда он читает byte.С другой стороны, мой клиент пишет в InputStream на полной скорости.

Но я замечаю, что после записи около 555,254 bytes в OutputStream клиент блокируется на write () метод выходного потока.Мой сервер, с другой стороны, продолжает читать 1 byte через каждые 10 секунд.

Такое поведение возможно, если данные буферизуются на обоих концах.Может кто-нибудь объяснить мне, почему это происходит?Я не использую BufferedInputStream или BufferedOutputStream.Почему данные буферизируются?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...