如题,看到WSAAsyncSelect()明显是异步
但是不知道其他WSA是否为异步还想问下,是不是如果想用异步模式最好用CAsyncSocket或者CSocket?

解决方案 »

  1.   

    WSA***函数是Winsock2提供的一些相对于Winsock1.1功能增强型函数,
    其中一些函数也不存在异步与同步之分。如果一定要在CAsyncSocket和CSocket间做一个选择,那还是选后者吧,
    当然也可以直接用Platform SDK的Winsock API
      

  2.   

    建议用CSocket比较好,CSocket是CAsyncSocket进一步封装,CSocket可以用做同步和异步两种模式,socket的同步和异步主要是FIONBIO的属性控制
    u_long enableNonBlocking = 1;
    int retval = ::ioctlsocket(m_Socket, FIONBIO, &enableNonBlocking);
    当enableNonBlocking =1时为异步,为0时为同步.
    WSA开头的函数是MS自己对BSD的扩展
      

  3.   

    还是用Socket API比较好,灵活机动,想怎么搞就怎么搞!