powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / События WinSock
11 сообщений из 11, страница 1 из 1
События WinSock
    #34504153
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, пожалуйста, почему у меня возникает событие FT_WRITE только один раз, сразу после события FD_CONNECT. Я создаю сокет, создаю объект событие и отслеживаю события FD_CONNECT, FD_READ, FD_WRITE,FD_CLOSE. При возникновении события FD_WRITE я передаю пакет данных (в цикле пока SEND не передаст все данные), по событию FD_READ - читаю данные.
Так вот событие FD_WRITE происходит полько один раз, обрабатывая событие, я отправляю пакет данны и получаю ответ (по FD_READ), а затем событие FD_WRITE уже не генерируется, хотя после передачи пакета, оно снова должно быть разрешено.
...
Рейтинг: 0 / 0
События WinSock
    #34508542
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неужели никто не использовал асихнронные режимы WINSOCK?
...
Рейтинг: 0 / 0
События WinSock
    #34508921
Maksim UM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
насколько я помню, FT_WRITE повторно будет только в случае какой-то ошибки.
в гугле несложно найти, по этому поводу было много обсуждений.
...
Рейтинг: 0 / 0
События WinSock
    #34509003
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суля по всему так оно и есть. Но в этом случае непонятно, как использовать это событие. Я передаю пакет и у меня нет ошибки, что делать, чтобы событие FD_WRITE возникло повторно?
...
Рейтинг: 0 / 0
События WinSock
    #34509257
Maksim UM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
думаю, просто передавать данные.
если будет переполнение буффера, то ждать появления нового FD_WRITE
...
Рейтинг: 0 / 0
События WinSock
    #34509818
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maksim UMдумаю, просто передавать данные.
если будет переполнение буффера, то ждать появления нового FD_WRITE
Спасибо, попробую.
...
Рейтинг: 0 / 0
События WinSock
    #34509820
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maksim UMдумаю, просто передавать данные.
если будет переполнение буффера, то ждать появления нового FD_WRITE
Спасибо, попробую.
...
Рейтинг: 0 / 0
События WinSock
    #34511405
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как в этом случае узнать, что передача данных запустилась? Успешное завершение функции send не говорит о завершение передачи или я не прав?
...
Рейтинг: 0 / 0
События WinSock
    #34512984
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В синхронном режиме я передавал пакет в цикле, пока он не будет передан целиком. А как реализовывать в асинхронном режиме и как узнать, что передача пакета завершена?
...
Рейтинг: 0 / 0
События WinSock
    #34515196
OLEG_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В асинхронном режиме пакет также нужно передавать в цикле? Знание об окончании передачи пакета могло бы пригодиться для контроля тайм-аута. Хотя наверное можно время отчитывать и от начала передачи.
...
Рейтинг: 0 / 0
События WinSock
    #34515454
Maksim UM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
лучше поискать, например по rsdn.ru там много информации.
например: тут есть пример
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / События WinSock
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]