I/O模型6种:阻塞模型,选择模型,WSAAsyncSelect模型,WSAEventSelect模型,重叠模型,完成端口模型socket
阻塞模式:函数
执行IO的winsock调用一直到操做完成才返回spa
好处:使用简单,当处理多个套接字链接时,必须建立多个线程。典型的一个链接使用一个线程线程
非阻塞模式下:code
winsock函数会当即返回blog
调用ioctlsocket函数显示让套接字工做在非阻塞模式下:io
u_long ul =1; SOCKET s=socket(AF_INET,SOCK_STREAM,0); ioctlsocket(s,FIONBIO,(u_long*)&ul);
调用失败:WSAEWOULDBLOCK,操做在调用期间没有完成。class