0、可运行实例及基本知识 1、如何设置 socket 函数的非阻塞调用
2、深入 CSocket 编程之阻塞和非阻塞模式 3、SOCKET 类的设计和实现 服务器 #include "stdafx
h" #include #include #include #include #include #include #pragma comment(lib, "ws2_32
lib") #define SERVPORT 7861 /*服务器监听端口号*/ #define MAXDATASIZE 100 #define BACKLOG 10 using namespace std; std::vector client_fd; char buf[MAXDATASIZE]; DWORD WINAPI qtPingServerThreadFunc(LPVOID lpThreadParameter); int _tmain(int argc, _TCHAR* argv[]) { SOCKET sockfd; /*sock_fd:监听socket; client_fd:数据传输socket */ struct sockaddr_in my_addr; /* 本机地址信息*/ struct sockaddr_in remote_addr; /* 客户端地址信息*/ char szMsg[]="hello"; WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(2,0); err = WSAStartup(wVersionRequested,&wsaData); if (0
= err) { cout