c ++ posix сокеты recv функциональность

У меня, наверное, нубистский вопрос, яя оглянулся, но не нашелЯ не видел прямого ответа на этот вопрос и подумал, что я мог бы получить быстрый ответ здесь. В простом цикле выбора клиент / сервер TCP / IP с использованием bsd-сокетов, если клиент отправляет два сообщения, которые одновременно поступают на сервер, один вызов на recv на сервере возвращает оба сообщения, объединенные в буфере, или вызывает recv каждый отчетливое прибывающее сообщение будет прочитано отдельно?

Я спрашиваю, потому что яя работаю в среде, где я могуРассказать, как клиент строит свои сообщения для отправки. Обычно recv сообщает, что считываются 12 байтов, затем 915, затем 12 байтов, затем 915 и т. Д. В таком чередующемся паттерне от 12 до 915 ... но иногда он сообщает о 927 (что составляет 915 + 12). Я думал, что либо клиент связывает некоторые из нихs информация вместе, прежде чем она отправит ее на сервер, или что сообщения прибывают до того, как вызывается recv, а затем recv извлекает все ожидающие байты одновременно. Поэтому я хотел убедиться, что понялс поведением правильно. Я думаю, что, возможно, яМне здесь что-то не хватает в моем понимании, и я надеюсь, что кто-то может указать на это, спасибо!

Ответы на вопрос(3)

Ваш ответ на вопрос