|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.10.2011, 20:02 | #1 |
Регистрация: 23.01.2010
Сообщений: 4
|
select() -> recv(). Неполный прием посылки
Код:
Я считал, что select() врнет номер сокета при возможности чтения (данные поступили) и после этого recv() их гарантированно примет и без подвисания вернет управление. Но картина видится теперь таким образом что select() вернет номер сокета уже сразу же при поступлении первых байт в сокет, а recv() вызовется еще до того как вся посылка придет и примет столько байт сколько их пришло в данный момент и вернет управление не дожидаясь окончания передачи. Сама по себе recv() (без select() ) принимает всю посылку как положено и возвращает правильное полное количество принятых байт. Как же все таки происходит на самом деле? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В зависимости от выбора в Select изменить значения другого Select | Tayfun | HTML и CSS | 3 | 18.08.2011 00:05 |
Программа для посылки сообщений | Zemelya | Софт | 4 | 09.03.2011 16:16 |
Программа для отслеживание посылки | vertraut | Помощь студентам | 2 | 18.02.2011 17:13 |
Неполный путь к HTML-файлу в WebBrowser | AbekIn3D | Общие вопросы Delphi | 2 | 31.10.2009 12:17 |
Select t1.N,t1.FIO,(select t2.acc from t2 where t2.type=1) from t1,t2 | mavlon_m | SQL, базы данных | 2 | 17.09.2009 15:28 |