java.net. SocketException: программное обеспечение вызвало разрыв соединения: ошибка при записи сокета [дубликат]

13
задан Jordi Castilla 21 March 2016 в 09:18
поделиться

1 ответ

Пожалуйста, обратитесь к ответам на Официальные причины «Программное обеспечение вызвало прерывание соединения: ошибка записи сокета»

РЕДАКТИРОВАТЬ

Я не думаю, что в целом можно сказать намного больше, и там В вашем коде нет ничего необычного, что могло бы привести к прерыванию соединения. Однако я хотел бы отметить, что:

  • Преобразование байтов в целые числа для вызова write не требуется. Он будет продвигаться автоматически.
  • Было бы лучше (проще, потенциально более эффективно с точки зрения сетевого трафика) использовать write (byte []) вместо write (int) .
  • Принимающая сторона предполагает, что каждый байт представляет собой полный символ. Это может быть неверно в зависимости от того, как отправляющая сторона сформировала байты для передачи, и
  • Было бы неплохо начать с отправки количества байтов, чтобы принимающая сторона могла определить, что что-то пошло не так, прежде чем отправитель отправил весь массив байтов.
5
ответ дан 2 December 2019 в 02:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: