摘要: (转自:http://www.codeproject.com/internet/iocp-multicast-udp.asp) 阅读全文
posted @ 2007-11-29 21:22 gAmesaceR 阅读(449) 评论(0) 推荐(0) 编辑
摘要: WIN32下面用proactor可以达到几乎RAW IOCP的效率,由于封装关系,应该是差那么一点。 阅读全文
posted @ 2007-11-29 21:17 gAmesaceR 阅读(1009) 评论(0) 推荐(0) 编辑
摘要: 众所周知,UDP是无连接的,面向消息的数据传输协议,对于传统的TCP服务器来讲,有2个致命的缺点,一是数据包容易丢失,二是数据包无序。很多人对于这2个弱点做了很多工作,大致的方法就是模拟TCP,其实这是无意义的,与其说模拟TCP还不如直接使用TCP。但是UDP的这2个缺点正好是可以利用的,实际上在某些状况下,正是UDP在网络游戏通信上的最大优势。 阅读全文
posted @ 2007-11-29 21:15 gAmesaceR 阅读(1108) 评论(1) 推荐(0) 编辑
摘要: 把这两天做Proactor的一些经验和心得写一下,可能会给一些人帮助。 Proactor是异步模式的网络处理器,ACE中叫做“前摄器”。 先讲几个概念: 前摄器(Proactor)-异步的事件多路分离器、处理器,是核心处理类。启动后由3个线程组成(你不需要关心这三个线程,我只是让你知道一下有这回事存在)。 接受器(Acceptor)-用于服务端,监听在一个端... 阅读全文
posted @ 2007-11-29 20:29 gAmesaceR 阅读(1123) 评论(0) 推荐(0) 编辑
摘要: 文章主要是讲到了系统I/O方式可分为阻塞,非阻塞同步和非阻塞异步三类,三种方式中,非阻塞异步模式的扩展性和性能最好。主要是讲了两种IO多路复用模式:Reactor和Proactor,并对它们进行了比较。文章还介绍了为Reactor和Proactor模式构建一个通用的,统一的对外接口并是一个完全可移植的开发框架选择方案 阅读全文
posted @ 2007-11-29 20:16 gAmesaceR 阅读(1863) 评论(0) 推荐(0) 编辑
摘要: 这是对目前大部分平台都适用的内存对齐规则的定义 #ifdef HP_UNIX #pragma pack 1 #elif defined(AIX) #pragma options align=packed #elif defined(_WIN32) #pragma pack(push, 1) #else #pragma pack(1) #endif .....数据结构定义 #i... 阅读全文
posted @ 2007-11-29 19:31 gAmesaceR 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 1.在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好? 2.UDP数据报的覆盖和重叠问题? 阅读全文
posted @ 2007-11-29 18:01 gAmesaceR 阅读(897) 评论(0) 推荐(0) 编辑