Multi send () или receive () в TCP - PullRequest
       2

Multi send () или receive () в TCP

0 голосов
/ 02 апреля 2012

Я хотел бы сделать несколько клиентов и серверов для обмена файлами друг с другом.У меня есть проблема, потому что TCP-сообщения объединяются, несмотря на то, что я установил, сколько байтов я хотел бы отправить и сколько получить.

Я посмотрел на него, и проблема возникает, когда в первом"message" Я отправляю имя файла и после этого (в новом Send ()) отправляю содержимое файла, например.

Я исправил это, отправив сообщение обратной связи после каждого полученного пакета в настоящее время.

Есть ли лучший способ сделать это?

1 Ответ

1 голос
/ 02 апреля 2012

Добавить префикс длины к каждому сообщению. А затем читайте в цикле, пока не получите столько байтов, сколько хотите.

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