功能强大的IOCP Socket Servre模块例程源码

上传者: guestcode | 上传时间: 2020-01-20 03:03:23 | 文件大小: 966KB | 文件类型: rar
完成端口通讯服务器(IOCP Socket Server)设计 (六)功能强大的IOCP Socket Servre模块例程源码 Copyright © 2009 代码客(卢益贵)版权所有 QQ:48092788 源码博客:http://blog.csdn.net/guestcode 一、声明 版权声明: 1、通讯模块代码版权归作者所有; 2、未经许可不得全部或部分用于任何项目开发; 3、未经许可不得部分修改后再利用源码。 免责声明: 1、 由于设计缺陷或其它Bug造成的后果,作者不承担责任; 2、未经许可的使用作者不提供任何技术支持服务。 权利和义务: 1、任何获得源码并发现Bug的个人或单位均有义务向作者反映; 2、作者保留追究侵权者法律责任的权利。 二、开发背景 部分代码由前项目分离而来,尚未有应用考验,但对于初学者学习和进阶有很大帮助。性能上尚未有定论,但应该不会令你失望。 三、功能说明 1、可以关闭Socket的Buffer; 2、可以关闭MTU(不等待MTU满才发送); 3、可以多IP或多端口监听; 4、可以重用socket(主动关闭除外); 5、可以0缓冲接收(Socket的Buffe = 0时,避免过多的锁定内存页); 6、可以0缓冲连接(客户端仅连接,不一定立即发数据); 7、可以条件编译: a、是否使用内核Singly-linked lists; b、是否使用处理线程(工作线程和处理线程分开); c、是否使用内核锁来同步链表。 8、可以实现集群服务器模式的通讯(有客户端socket); 9、可以单独设置每个连接的Data项来实现连接和Usernfo的关联; 10、每个线程有OnBegin和OnEnd,用于设置线程独立的对象(数据库会话对象); 11、可以提供详细的运行情况,便于了解IOCP下的机制,以及进行调试分析; 12、可以发起巨量连接和数据(需要硬件配置来支持)。

文件下载

资源详情

[{"title":"( 69 个子文件 966KB ) 功能强大的IOCP Socket Servre模块例程源码","children":[{"title":"GUdpClient.cpp <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(2)内存管理(AWE).doc <span style='color:#111;'> 131.50KB </span>","children":null,"spread":false},{"title":"GSocket.h <span style='color:#111;'> 19.99KB </span>","children":null,"spread":false},{"title":"GPerIoData.h <span style='color:#111;'> 4.62KB </span>","children":null,"spread":false},{"title":"GPerHandleData.cpp <span style='color:#111;'> 12.31KB </span>","children":null,"spread":false},{"title":"GProcesserThread.cpp <span style='color:#111;'> 8.88KB </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(1)是谁神化了IOCP.doc <span style='color:#111;'> 27.50KB </span>","children":null,"spread":false},{"title":"GTcpServer.cpp <span style='color:#111;'> 48.91KB </span>","children":null,"spread":false},{"title":"GWorkerThread.h <span style='color:#111;'> 1.96KB </span>","children":null,"spread":false},{"title":"GSocketInside.h <span style='color:#111;'> 8.97KB </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(6)功能强大的IOCP Socket Servre模块例程源码.doc <span style='color:#111;'> 1.05MB </span>","children":null,"spread":false},{"title":"GUdpServer.h <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"GCommProtocol.h <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(5)妙用PerHandleData和PerIoData.doc <span style='color:#111;'> 55.00KB </span>","children":null,"spread":false},{"title":"GSocketDemo","children":[{"title":"GSocketDemo.h <span style='color:#111;'> 472B </span>","children":null,"spread":false},{"title":"stdafx.h <span style='color:#111;'> 1.75KB </span>","children":null,"spread":false},{"title":"GSocketDemoDlg.h <span style='color:#111;'> 4.41KB </span>","children":null,"spread":false},{"title":"targetver.h <span style='color:#111;'> 1.01KB </span>","children":null,"spread":false},{"title":"GSocketDemo.vcproj <span style='color:#111;'> 7.01KB </span>","children":null,"spread":false},{"title":"GSocketDemo.cpp <span style='color:#111;'> 1.30KB </span>","children":null,"spread":false},{"title":"GSockInfo.cpp <span style='color:#111;'> 18.87KB </span>","children":null,"spread":false},{"title":"stdafx.cpp <span style='color:#111;'> 142B </span>","children":null,"spread":false},{"title":"GSocketDemo.aps <span style='color:#111;'> 71.39KB </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 2.45KB </span>","children":null,"spread":false},{"title":"GSocketDemo.rc <span style='color:#111;'> 14.36KB </span>","children":null,"spread":false},{"title":"Resource.h <span style='color:#111;'> 7.13KB </span>","children":null,"spread":false},{"title":"GSocketDemo.vcproj.LEMO139.Administrator.user <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"res","children":[{"title":"GSocketDemo.ico <span style='color:#111;'> 21.12KB </span>","children":null,"spread":false},{"title":"GSocketDemo.rc2 <span style='color:#111;'> 367B </span>","children":null,"spread":false}],"spread":false},{"title":"GSocketDemoDlg.cpp <span style='color:#111;'> 30.04KB </span>","children":null,"spread":false},{"title":"GSockInfo.h <span style='color:#111;'> 2.33KB </span>","children":null,"spread":false}],"spread":false},{"title":"GMemory.cpp <span style='color:#111;'> 25.41KB </span>","children":null,"spread":false},{"title":"GThread.cpp <span style='color:#111;'> 10.86KB </span>","children":null,"spread":false},{"title":"GLog.cpp <span style='color:#111;'> 3.33KB </span>","children":null,"spread":false},{"title":"GLog.h <span style='color:#111;'> 1.11KB </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(4)一个简单而又灵活的IOCP模块.doc <span style='color:#111;'> 76.50KB </span>","children":null,"spread":false},{"title":"GSocketInside.cpp <span style='color:#111;'> 41.78KB </span>","children":null,"spread":false},{"title":"GSocket.suo <span style='color:#111;'> 250.50KB </span>","children":null,"spread":false},{"title":"完成端口通讯服务器(IOCP Socket Server)设计——(3)不要迷信API(单链表的另一种算法).doc <span style='color:#111;'> 59.50KB </span>","children":null,"spread":false},{"title":"GCommProtocol.cpp <span style='color:#111;'> 4.35KB </span>","children":null,"spread":false},{"title":"GTcpClient.cpp <span style='color:#111;'> 29.01KB </span>","children":null,"spread":false},{"title":"GThread.h <span style='color:#111;'> 2.56KB </span>","children":null,"spread":false},{"title":"GUdpServer.cpp <span style='color:#111;'> 2B </span>","children":null,"spread":false},{"title":"GSocketDemo0.85.exe <span style='color:#111;'> 92.00KB </span>","children":null,"spread":false},{"title":"GMemMngDemo","children":[{"title":"GMemMngDemo.h <span style='color:#111;'> 471B </span>","children":null,"spread":false},{"title":"stdafx.h <span style='color:#111;'> 1.75KB </span>","children":null,"spread":false},{"title":"GMemMngDemoDlg.cpp <span style='color:#111;'> 21.32KB </span>","children":null,"spread":false},{"title":"GMemMngDemoDlg.h <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"GMemMngDemo.vcproj.LEMO139.Administrator.user <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"targetver.h <span style='color:#111;'> 1.01KB </span>","children":null,"spread":false},{"title":"GMemMngDemo.cpp <span style='color:#111;'> 1.64KB </span>","children":null,"spread":false},{"title":"stdafx.cpp <span style='color:#111;'> 142B </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 2.62KB </span>","children":null,"spread":false},{"title":"Resource.h <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false},{"title":"GMemMngDemo.rc <span style='color:#111;'> 7.97KB </span>","children":null,"spread":false},{"title":"res","children":[{"title":"GMemMngDemo.ico <span style='color:#111;'> 21.12KB </span>","children":null,"spread":false},{"title":"GMemMngDemo.rc2 <span style='color:#111;'> 367B </span>","children":null,"spread":false}],"spread":false},{"title":"GMemMngDemo.aps <span style='color:#111;'> 60.49KB </span>","children":null,"spread":false},{"title":"GMemMngDemo.vcproj <span style='color:#111;'> 5.52KB </span>","children":null,"spread":false}],"spread":false},{"title":"GSocket.sln <span style='color:#111;'> 1.34KB </span>","children":null,"spread":false},{"title":"GTcpClient.h <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"GMemMngDemo1.0.exe <span style='color:#111;'> 55.00KB </span>","children":null,"spread":false},{"title":"GPerHandleData.h <span style='color:#111;'> 2.49KB </span>","children":null,"spread":false},{"title":"GPerIoData.cpp <span style='color:#111;'> 15.38KB </span>","children":null,"spread":false},{"title":"GUdpClient.h <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"GMemory.h <span style='color:#111;'> 2.50KB </span>","children":null,"spread":false},{"title":"GTcpServer.h <span style='color:#111;'> 1.72KB </span>","children":null,"spread":false},{"title":"GWorkerThread.cpp <span style='color:#111;'> 10.64KB </span>","children":null,"spread":false},{"title":"GProcesserThread.h <span style='color:#111;'> 336B </span>","children":null,"spread":false}],"spread":true}]

评论信息

  • 金河流域 :
    楼主辛苦!
    2020-08-15
  • caofei :
    正是我要的资料,学习一下
    2020-01-12
  • jeje1 :
    不错用起来还可以
    2019-07-23
  • 橘子西瓜 :
    这个例子不错,很完善。而且加了很多其他比较有参考意义的功能。
    2019-05-17
  • lunatic7 :
    值得下载和学习
    2018-11-23

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明