
网络编程
文章平均质量分 83
zt_xcyk
小小程序员
展开
-
关于send时产生WSAEWOULDBLOCK问题
关于send时产生WSAEWOULDBLOCK时的处理办法,得出如下结论:产生这个错误只是说明out buffer已经满了,不代表出错.可以等待FD_WRITE消息,此时将没有发送完成的数据再次发送出去.WSAEWOULDBLOCK错误意味着请求的操作在调用期间没有时间完成转载 2017-03-20 16:37:59 · 1870 阅读 · 0 评论 -
Windows网络编程(基础篇1)
Windows网络编程(基础篇1) Winsock是一种网络编程接口,不是协议。 除了WSAStartup、WSACleanup、WSARecvEx、WSAGetLastError属于Winsocket1.1规范函数外,凡是有前缀WSA的,都是在Winsock 2 中更新或者增添的一个新的API函数。 一、Winsock初始化包含头文件winsock2.h,链接库WS2_32i原创 2017-03-10 15:21:28 · 8430 阅读 · 0 评论 -
套接字的I/O模型(一)
套接字的I/O模型(一) 共有6种类型的套接字I/O模型,它们包括:blocking(阻塞)、select(选择)、WSAAsyncSelect(异步选择)、WSAEventSelect(事件选择)、overlapped(重叠)以及completionport(完成端口)原创 2017-03-23 16:15:21 · 1735 阅读 · 0 评论 -
Windows网络编程(基础篇2)
无连接通信UDP 无连接通信是通过UDP/IP协议完成的。UDP不能确保可靠的数据传输,但能将数据发送到过个目标,或者接收多个源数据。UDP通信不用调用listen和accept。接收函数有recvfrom,和WSARecvFrom。int recvfrom( _In_ SOCKET s, _Out_ char *buf,原创 2017-03-14 20:27:59 · 922 阅读 · 0 评论 -
套接字的I/O模型(二)
套接字的I/O模型(二)overlapped模型 相比于其他的I/O模型,重叠I/O(Overlapped I/O)模型使应用程序能达到更佳的系统性能。重叠模型的基本设计原理是:让应用程序使用重叠的数据结构,一次投递一个或多个Winsock I/O请求。针对那些提交的请求,在它们完成之后,应用程序可以为它们提供服务。Windows重叠I/O机制可通过ReadFile和WriteFile两个函数原创 2017-04-12 16:13:59 · 537 阅读 · 0 评论 -
套接字的I/O模型(三)
completionport模型假若一个应用程序同时需要管理为数众多的套接字,那么采用这种模型,可以达到最佳的系统性能。从本质上说,完成端口模型要求创建一个Windows完成端口对象,该对象通过指定数量的线程,对重叠I/O请求进行管理,以便为已经完成的重叠I/O请求提供服务。原创 2017-04-19 09:10:24 · 521 阅读 · 0 评论 -
进程、线程间通信机制
进程、线程间通信机制1. 管道(pipe)管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程。2. 有名管道(named pipe)有名管道也是半双工的通信方式,但是它允许无亲缘关系的进程间通信。3. 信号量(semophore)信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其原创 2017-07-25 16:28:11 · 995 阅读 · 0 评论