两种IO模式:Proactor与Reactor模式 https://www.cnblogs.com/pigerhan/p/3474217.html. 挺好的说明了epoll和IOCP的区别 在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同 ...
分类:
其他好文 时间:
2019-11-10 09:45:26
阅读次数:
88
参考 https://docs.microsoft.com/zh-cn/windows/win32/api/winbase/nf-winbase-bindiocompletioncallback 前言 IOCP除了使用IOCP Input/Output Completion Port IO完成端口 ...
分类:
其他好文 时间:
2019-09-10 14:45:37
阅读次数:
111
1. AcceptEx 10061 客户端循环连接,没有发送数据,一定次数后,连接失败,WSAGetLastError的结果是10061。并且后续无法再次连接。 这是因为其中的一个参数,详细用法参考IOCP Input/Output Completion Port IO完成端口 dwReceiveD ...
分类:
其他好文 时间:
2019-09-09 14:48:34
阅读次数:
108
BIO/NIO/AIO区别 首先需要区分几个概念 1. IO分为内存IO/网络IO/磁盘IO,磁盘IO都是阻塞的 2. 阻塞与非阻塞是通过代码来实现的,区别在于是在于发过来操作请求,数据准备好才返回(阻塞)还是直接返回(非阻塞) 3. IO读取顺序:磁盘(磁盘IO)/网卡(网络IO)— 内核缓冲区 ...
分类:
其他好文 时间:
2019-08-28 11:04:27
阅读次数:
91
高性能TcpServer - 1.网络通信协议 高性能TcpServer - 2.创建高性能Socket服务器SocketAsyncEventArgs的实现(IOCP) 高性能TcpServer - 3.命令通道(处理:掉包,粘包,垃圾包) 高性能TcpServer - 4.文件通道(处理:文件分包 ...
分类:
其他好文 时间:
2019-07-24 16:36:05
阅读次数:
174
高性能TcpServer - 1.网络通信协议 高性能TcpServer - 2.创建高性能Socket服务器SocketAsyncEventArgs的实现(IOCP) 高性能TcpServer - 3.命令通道(处理:掉包,粘包,垃圾包) 高性能TcpServer - 4.文件通道(处理:文件分包 ...
分类:
其他好文 时间:
2019-07-24 16:34:00
阅读次数:
148
高性能TcpServer - 1.网络通信协议 高性能TcpServer - 2.创建高性能Socket服务器SocketAsyncEventArgs的实现(IOCP) 高性能TcpServer - 3.命令通道(处理:掉包,粘包,垃圾包) 高性能TcpServer - 4.文件通道(处理:文件分包 ...
分类:
其他好文 时间:
2019-07-24 16:24:59
阅读次数:
92
随着计算机技术,尤其是网络技术的飞速发展,如今的程序开发人员不仅仅局限于基于单机运行或单一线程的应用程序的开发。服务器端 / 客户端模式的最显著的特点是一个服务器端应用能同时为多个客户端提供服务。而传统的服务器端 / 客户端模式通常为每一个客户端创建一个独立的线程,这种实现方式在客户端数量不多的情况 ...
分类:
编程语言 时间:
2019-05-06 11:56:22
阅读次数:
396
JVM的多路复用器实现原理 Linux 2.5以前:select/poll Linux 2.6以后: epoll Windows: IOCP Free BSD, OS X: kqueue 下面仅讲解Linux的多路复用。 Linux中的IO Linux的IO将所有外部设备都看作文件来操作,与外部设备 ...
分类:
编程语言 时间:
2019-03-28 13:36:46
阅读次数:
244
DELPHI中完成端口(IOCP)的简单分析(2) 今天我写一下关于DELPHI编写完成端口(IOCP)的工作者线程中的东西。希望各位能提出批评意见。上次我写了关于常见IOCP的代码,对于IOCP来说,接受到客户端发送过来和自己发送出去的数据都是从工作者线程中得到。代码和解释如下:function ...