Странности с блокировкой

Discussion in 'WASM.NETWORKS' started by 10_Brasil, Oct 3, 2006.

  1. 10_Brasil

    10_Brasil New Member

    Blog Posts:
    0
    Joined:
    Apr 20, 2006
    Messages:
    54
    Правда что сокет, который принимается функцией accept становится сходу неблокирующим? (hLocal, ассинхронный метод)

    Code (Text):
    1. switch(WSAGETSELECTEVENT(lParam))
    2. {
    3.     case    FD_ACCEPT:
    4.     {
    5.         SOCKET s;
    6.        
    7.         if((s=accept(hLocal,0,0))!=SOCKET_ERROR)
    8.         {
    9.             char buffer[MAX_PATH];
    10.            
    11.             recv(s,buffer,100,0);
    12.             // recv выдает 10035 (WSAEWOULDBLOCK)
    13.             // Почему, ведь сокет при создании должен быть блокирующий?
    14.        
    15.             if(hThread=CreateThread(0,0,(LPTHREAD_START_ROUTINE) MyProc,(LPVOID) s,0,0))
    16.             {
    17.                 CloseHandle(hThread);
    18.             }
    19.         }
    20.     }
    21.     break;
    22. }
     
  2. Bohdan200

    Bohdan200 New Member

    Blog Posts:
    0
    Joined:
    Sep 13, 2005
    Messages:
    134
    Location:
    Lviv
     
  3. IceStudent

    IceStudent Active Member

    Blog Posts:
    0
    Joined:
    Oct 2, 2003
    Messages:
    4,300
    Location:
    Ukraine
    10_Brasil
    Не плоди темы.