WSA
Windows Sockets Asynchronous
socket与WSASocket的区别
socket() 函数创建一个通讯节点并返回一个套接字,如果是阻塞套接字时,相应api会阻塞。
WSASocket()的发送操作和接收操作都可以被重叠使用,接收函数可以被多次调用,发出接收缓冲区,准备接收到来的数据,发送函数也可以被多次调用,组成一个发送缓冲区队列,课时socket()却只能发过之后等待回消息才可做下一步操作。
WSAStartup函数:用于初始化供进程调用的Winsock相关的dll文件
int WSAStartup(IN WORD wVersionRequested,OUT LPWADDATA lpWSAData);
参数:
WSASocket函数:创建一个与指定传送服务器提供者捆绑的套接字,可选的创建和加入一个套接字组
SOCKET WSASocket(int af , int type , int protocol , LPWSAPROTOCOL_INFO lpProtocolInfo,GROUP g,DWORD dwFlags);
参数:
第一个参数 地址族规范,如AF_INET
第二个参数套接字类型,SOCK_STREAM , 数据报SOCK_DGRAM
第三个参数套接字使用的协议,不愿指定协议则为0
第四个参数结构体指针如果本参数非0,则前三个参数被忽略
第五个参数现有套接字
第六个参数套接字属性描述标志,如:WSA_FLAG_OVERLAPPED
返回值:
成功就返回新创