![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
Форумчанин
Регистрация: 29.04.2008
Сообщений: 100
|
![]()
Попробовал тут как-то перегнать на асм код Криса для создания TCP сервера на WinSock. До вменяемой рабочей версии допилил, но в процессе возник вопрос, порожденный цитатой на одном форуме:
Цитата:
Код:
А вопрос, собственно, в следующем: неужели на блокирующих сокетах recv получает всё сообщение разом? |
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 11.01.2012
Сообщений: 177
|
![]()
подсистема сокетов ждёт когда пакет придёт полностью и только потом передаёт пакет функции recv
progromore.i2p - первый русскоязычный портал программистов в скрытосети
Последний раз редактировалось Rock-n-Rolla; 17.03.2012 в 23:07. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 29.04.2008
Сообщений: 100
|
![]()
Про пакет я знаю, я про всё сообщение целиком, ведь через TCP данные передаются потоком, то есть могут быть разбиты(склеены) в любом порядке, что означает что сообщение, посланное за один вызов Send, вполне может быть принято за несколько вызовов Recv и наоборот. Но для блокирующих сокетов мне такое поймать не удалось.
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 15.07.2008
Сообщений: 28
|
![]()
hiho, во-вторых - RtlZeroMemory лишнее, т.к. recv отдаёт кол-во полученых байт, во-первых, если нехватает мазохизма, установите размер BufStr в пару байт, и посмотрите на результат.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
recv socket | cppn00b | Visual C++ | 5 | 03.04.2011 15:19 |
recv Function | Dimarik | Win Api | 2 | 04.04.2010 11:53 |
Функция recv (Winsock) | YYYYY | Работа с сетью в Delphi | 0 | 18.02.2010 02:16 |
recv() | Артэс | C/C++ Сетевое программирование | 7 | 15.01.2010 14:51 |
WinSock (send, recv) | AidarBik | Работа с сетью в Delphi | 1 | 27.07.2008 15:22 |