继承CSocket实现异步

CSocket 继承自CAsyncSocket 给成阻塞的了。要想改为非阻塞的,继承CSocket 重载connectHelper() 和OnConnect()两个函数即可,如下:

声明
 virtual BOOL ConnectHelper(const SOCKADDR* lpSockAddr,int                 nSockAddrLen);
 virtual void OnConnect(int nErrorCode);



实现:
BOOL 派生类::ConnectHelper(const SOCKADDR* lpSockAddr,int       nSockAddrLen)
{
        return connect(m_hSocket, lpSockAddr, nSockAddrLen) !=     SOCKET_ERROR;
}


void 派生类::OnConnect(int nErrorCode)
{
}

你可能感兴趣的:(继承CSocket实现异步)