现在我做一个客户端程序.这个客户端程序的一个功能就是创建一个监听线程,监听和服务器的网络连接,判断服务器是否有socket字符串发给客户端,如果有,就创建一个接收线程接收socket字符串并对其解析。但是我现在面临一个问题:我如何判断服务器端有socket字符串发给客户端呢?我想到调用CAsyncSocket::Receive函数,假如该函数返回值不为0,就表示有数据过来,但是又如何表示服务器和客户端程序处于连接状态,同时服务器并没有给客户端程序发消息呢?
因为CAsyncSocket::Receive函数的返回值为0表示连接已经断开,-1表示SOCKET_ERROR发生.我感觉调用CAsyncSocket::Receive函数并不能表示多种情况。那该如何做呢?