![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
TCP/IP
文章平均质量分 56
xundao_803817
这个作者很懒,什么都没留下…
展开
-
Qt TCP简单通信
Qt实现TCP通信原创 2022-07-19 17:14:48 · 5032 阅读 · 1 评论 -
TCP/IP 完成端口
完成端口是对重叠IO的直接优化在重叠IO上进行优化:1.创建完成端口HANDLE WINAPI CreateIoCompletionPort( _In_ HANDLE FileHandle, // 填 INVALID_HANDLE_VALUE _In_opt_ HANDLE ExistingCompletionPort, // 对现有i/o完成端口或空的句柄。 填NULL _In_ ULONG_PTR CompletionKey, // 填0原创 2021-08-18 16:06:22 · 216 阅读 · 0 评论 -
重叠IO之完成例程
重叠IO事件通知与完成例程的区别:重叠IO事件通知:需要调用 WSAGetOverlappedResult,获取等到事件的结果,然后根据逻辑,进行分类处理;重叠IO完成例程:主要是通过处理WSARecv函数的回调函数,和处理WSASend函数的回调函数,不用进行循环去获取等待事件的结果,系统会自动调用回调函数进行处理,完成例程的性能更好回调函数:void CALLBACK CompletionROUTINE( IN DWORD dwError, // 错原创 2021-08-13 15:10:15 · 447 阅读 · 0 评论 -
重叠IO之事件通知
重叠IO: 重叠IO是Windows提供的一种异步读写文件的机制 正常读写文件(socket本质就是文件操作),如recv,是阻塞的, 等协议缓存区中的数据全部复制进行自定义的buffer字符数组里, 函数才结束并返回复制的个数,写也一样,同一时间只能读写一个,其他的都被阻塞, 只能等读写操作完成之后阻塞才被解除 重叠IO机制读写,将读的指令以及自定义的buffer投给操作系统,然后函数直接返回,操作系统独立开个线程,...原创 2021-08-12 10:55:41 · 140 阅读 · 0 评论 -
TCP/IP网络模型之异步选择模型
异步选择模型是基于窗口实现窗口的创建如下:1.创建窗口结构体typedef struct tagWNDCLASSEXW { UINT cbSize; UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH原创 2021-08-04 15:19:45 · 234 阅读 · 0 评论 -
TCP/IP 事件选择模型
服务端:1.打开网络库int WSAStartup(WORD wVersionRequired, LPWSADATA lpWSAData);2.校验版本号2 != HIBYTE(wsaData.wVersion) || 2 != LOBYTE(wsaData.wVersion) // (检验版本号是 2.2)3.创建socket 套接字SOCKET socket(int af, int type, int protocol);4.绑定地址与端口号int bind(.原创 2021-08-01 15:12:00 · 296 阅读 · 0 评论 -
TCP/IP select模型
select模型适用于服务端服务端:1.打开网络库int WSAStartup(WORD wVersionRequired, LPWSADATA lpWSAData);2.检验版本号2 != HIBYTE(wsaData.wVersion) || 2 != LOBYTE(wsaData.wVersion) // (检验版本号是 2.2)3.创建socket 套接字SOCKET socket(int af, int type, int protocol);4.绑定地址与原创 2021-07-25 14:49:41 · 395 阅读 · 3 评论 -
TCP/IP 基本C/S模型
服务端与客户端通信服务端:1.打开网络库int WSAStartup(WORD wVersionRequired, LPWSADATA lpWSAData);2.检验版本号2 != HIBYTE(wsaData.wVersion) || 2 != LOBYTE(wsaData.wVersion) (检验版本号是 2.2)3.创建socket 套接字SOCKET socket(int af, int type, int protocol);4.绑定地址与端口号int bi.原创 2021-07-23 13:38:54 · 164 阅读 · 0 评论