WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  socket

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   socket
delitant опубликован 13-02-2002 14:25 MSK   Click Here to See the Profile for delitant   Click Here to Email delitant  
В книге Network Programming for MS Windows На стр. 216 есть пример работы с функцией WSAAsyncSelect а именно

switch(WSAGETSELECTEVENT(lParam))
{
case FD_ACCEPT:
Accept = accept(wParam, NULL, NULL) ;
WSAAsyncSelect(Accept, hwnd, WM_SOCKET,FD_READ|FD_WRITE|FD_CLOSE);
break;

case FD_READ:

и вот в чем вопрос. Зачем при FD_ACCEPT вызывать функцию
WSAAsyncSelect(Accept, hwnd, WM_SOCKET,FD_READ|FD_WRITE|FD_CLOSE);
Это строка меня просто шокировала.
Зачем она??? Я всегда делал без нее, и у меня все прекрасно работало.
Как написано в книге это подготовка сокета для отправки уведомлений о событиях которые с ним происходят.

purpe опубликован 13-02-2002 17:52 MSK     Click Here to See the Profile for purpe  Click Here to Email purpe     
я так думаю, чтобы исключить попадания на сокет вторичного сообщения FD_ACCEPT

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.