- 博客(25)
- 资源 (1)
- 收藏
- 关注
转载 提高IOCP 效率的一些方法,技巧 (来自WINDOWS 网络编程第二版)
1. AcceptEx:BOOLPASCAL FARAcceptEx ( IN SOCKET sListenSocket, IN SOCKET sAcceptSocket, IN PVOID lpOutputBuffer, IN DWORD dwReceiveDataLength, IN DWORD dwLocalAddressLength, IN DWORD dwRe
2007-10-19 16:52:00
2436
转载 Active Object -An Object Behavioral Pattern for Concurrent Programming 主动对象模式 (转)
原标题:Active Object -An Object Behavioral Pattern for Concurrent Programming源文地址:http://www.cs.wustl.edu/~schmidt/PDF/Act-Obj.pdf译者:cuichaox@gmail.com译者注:1. 对象分为主动对象和被动对象,主动对象内部包含一个线程,可以自动完成动作或改变状态,而
2007-10-19 11:23:00
1426
原创 今天看了ACE 中Proactor实现部分的一些代码,做一些总结和分析
ACE 中的Proactor (前摄器) 框架是按照Proactor 模式而实现的一个高效的异步IO 网络并发框架。在Windows 下是完成端口(IOCP), 在linux下是AIO( 如果linux 版本支持). 据说AIO的实现有各种问题,所以目前Proactor的使用者,主要还是集中在Windows上。 Proactor框架在实现时,大量使用了Bridge模式,以实现接口与OS 特性的分离
2007-10-17 20:53:00
1707
转载 高性能的网络游戏服务器的设计[转]
说起高性能的网络游戏,有2个典范,1个是暴雪的WOW,另外一个要数腾讯的QQGame了,因为对于MMPRPG的体系接触不深,几乎属于文盲,没有太多的发言权,而自己又是搞休闲游戏开发的所以本文就主要谈谈QQGame了。 前些天通过朋友得到了QQGame的一个系统分析的文档,看完后很是震惊,彻底被QQ的设计所折服了,到底是千万人在线系统经验的拥有者,牛! 通过资料了解到QQGame目前有以
2007-10-17 13:55:00
4240
1
原创 服务器底层网络框架设计的一些思考
最近准备实现一个底层网络框架, 以供以后开发网络程序时使用。在开发的过程中,慢慢的意识到在框架设计中存在的一些问题。以下是自己的思考。 采用windows 还是 linux. 我选windows, 因为windows 的IOCP资料比较多, 而且提供的支持库,开发环境都比linux 要方便。可以首先在windows 上做一个实现。以后如果有需要的化,再移植到linux上. 只要
2007-10-16 21:03:00
2261
原创 一次不成功的汇编优化
最近跟一个同事讨论一个读取bmp图片显示的问题时,他提出想用汇编进行优化。于是我就写了个例子尝试了一下,代码如下: #include #include using namespace std;#define SOURCE_LEN 400000#define DEST_LEN 800000int main(){ char *pBuff = new char[SOURCE_LEN]; /
2006-12-22 10:13:00
1177
转载 c/c++ 下使用内嵌汇编(inline assembler) (转自MSDN)
Inline AssemblerThe compiler includes a powerful inline assembler. With it, assembly language instructions can be used directly in C and C++ source programs without requiring a separate assembler pr
2006-08-12 14:06:00
7122
转载 DEBUG命令详解 (转)
Editor:admin Time:2004-3-20 20:15 Read:15481 Score:7 Print Preface:DEBUG是DOS中的一个外部命令......
2006-08-12 13:47:00
1209
原创 DirectDraw学习总结
DirectDraw学习总结 最近一段时间,一直在学习DirectDraw. 在这里把自己学习的一些浅浅的体会写出来.因为自己工作中只使用很少的DirectDraw,所以也没有深入研究.基本上是浅尝辄止把. 要学习DirectDraw. 首先要熟悉COM. DirectX利用COM 实现了程序的无缝升级.这是DX一个很大的优点,用户无需对特定版本的DX编写程序.开发出来
2006-08-01 12:37:00
1762
转载 vi 使用指南
立志在linux有所建树,就必须要熟悉linux文字编辑利器vi 基本上 vi 共分为三种模式,分别是『一般模式』、『编辑模式』与『指令列命令模式』三种! · 一般模式:以 vi 处理一个档案的时后,一进入该档案就是一般模式了。在这个模式中,你可以使用『上下左右』按键来移动光标,您可以使用『删除字符』或『删除整行』来处理档案内容,也可以使用『复制、贴上』来处理您的文件资料
2006-03-02 22:35:00
1452
原创 2006 年的计划
2006年已经到来了,在这里, 准备对2006年的学习和工作做一些打算。嘿嘿,把他写出来了,主要是怕自己偷懒,放在这里,有人监督,可能会好很多. 1. 从头到尾阅读一遍于渊的系统, 并写出来笔记与体会与大家分享. 2.阅读基本网络编程的书籍,提高自己在这方面的水平。网络编程是开发中很重要的一个方面,尤其自己现在身处游戏行业中,就尤为显得重要了. 3.
2006-02-28 14:05:00
1150
转载 在你的游戏中应用LUA (ZT) (转)
源自OGDEV的HACK的文章,本文转自zx9597446的Blog,欢迎对Lua感兴趣的朋友互相交流, mailto: zx9597446@sina.com 在你的游戏中应用Lua(1):在你的游戏代码中运行解释器 通常,你希望在你的游戏开始的时候读取一些信息,以配置你的游戏,这些信息通常都是放到一个文本文件中,在你的游戏启动的时候,你需要打开这个文件,然后解析字符串,找到所需要的信息。 是
2006-02-17 11:29:00
4317
原创 通过例子学习Lua(7) ---- Lua中调用C/C++函数 (转)
1.前言上次偶说到从C/C++中调用Lua的函数, 然后就有朋友问从Lua中如何调用C/C++的函数, 所以偶们这次就来说说这个问题. 首先偶们会在C++中建立一个函数, 然后告知Lua有这个函数, 最后再执行它. 另外, 由于函数不是在Lua中定义的, 所以无法确定函数的正确性, 可能在调用过程中会出错, 因此偶们还会说说Lua出错处理的问题.2.Lua中调用C函数在lua中是以函数指针的形式调
2006-02-17 11:24:00
2753
1
原创 通过例子学习Lua(6) ---- C/C++中用Lua函数(转)
参考英文文档http://tonyandpaige.com/tutorials/lua2.html1.简介偶们这次主要说说怎么由Lua定义函数, 然后在C或者C++中调用. 这里偶们暂不涉及C++的对象问题, 只讨论调用函数的参数, 返回值和全局变量的使用.2.这里偶们在e12.lua里先定义一个简单的add(), x,y为加法的两个参数, return 直接返回相加后的结果.例e12.lua--
2006-02-17 11:23:00
1534
原创 通过例子学习Lua(5) ---- Lua与C交互入门 (转)
1.简介Lua与C/C++结合是很紧密的, Lua与C++交互是建立在Lua与C的基础上的, 所以偶先从Lua与C讲起.正如第一讲所说, 运行Lua程序或者说调用Lua主要有两种方式:* 通过命令行执行"Lua"命令* 通过Lua的C库虽然此前偶们一直用第一种方式, 但偶要告诉你, 通过Lua的C库执行才是游戏中常用的方式.2.Lua的C库Lua的C库可以做为Shared Library调用, 但
2006-02-17 11:22:00
2164
原创 通过例子学习Lua(4) -- 函数的调用 (转)
1.不定参数例e07.lua-- Functions can take a -- variable number of -- arguments. function funky_print (...) for i=1, arg.n do print("FuNkY: " .. arg) end end funky_print("one", "two")运行结果FuNkY: one
2006-02-17 11:20:00
1442
原创 通过例子学习Lua(3) ---- Lua数据结构 (转)
1.简介Lua语言只有一种基本数据结构, 那就是table, 所有其他数据结构如数组啦,类啦, 都可以由table实现.2.table的下标例e05.lua-- Arrays myData = {} myData[0] = “foo” myData[1] = 42 -- Hash tables myData[“bar”] = “baz” -- Iterate through the -- stru
2006-02-17 11:19:00
1879
1
原创 通过例子学习Lua(2) --- Lua流程控制 (转)
1. 函数的使用以下程序演示了如何在Lua中使用函数, 及局部变量例e02.lua-- functions function pythagorean(a, b) local c2 = a^2 + b^2 return sqrt(c2) end print(pythagorean(3,4))运行结果5程序说明在Lua中函数的定义格式为:function 函数名(参数)...end与Pasca
2006-02-17 11:18:00
2095
原创 通过例子学习Lua_1(转)
本文作者是OGDEV的HACK达人通过例子学习Lua(1) ---- Hello World1.前言偶最近在学习Lua, 所以写出心得和大家共享, 争取一天写一篇, 嘿嘿.才开始学所以内容很浅, 希望大家包涵.Lua是一种完全免费的脚本语言, 可以和C/C++语言紧密结合,它的官方网站在http://www.lua.org./ 在网站上可以下载到lua的源码, 没有可执行版本, 不过不用担心, 因
2006-02-17 11:17:00
1459
转载 一些socket 辅助函数的介绍和举例说明
与socket有关的一些函数介绍1、读取当前错误值:每次发生错误时,如果要对具体问题进行处理,那么就应该调用这个函数取得错误代码。 int WSAGetLastError(void ); #define h_errno WSAGetLastError()错误值请自己阅读Winsock2.h。2、将主机的unsigned long值转换为网络字节顺序(32位
2006-02-17 10:54:00
1048
转载 一个支持RunGate的服务器框架实例(转)
日期:2005-6-21 作者:尚海忠 阅读:975关键词 服务器开发框架 ACE 当前,一般采用Client/Server架构来开发网络游戏,客户端和服务器一般通过TCP协议进行通信。在设
2006-02-17 10:51:00
1657
转载 完成端口与高性能服务器程序开发(转)
Email:kruglinski_at_gmail_dot_comBlog:kruglinski.blogchina.com早在两年前我就已经能很熟练的运用完成端口这种技术了,只是一直没有机会将它用在什么项目中,这段时间见到这种技术被过分炒作,过分的神秘化,就想写一篇解释它如何工作的文章.想告诉大家它没有传说中的那么高深难懂!有什么错误的地方还请高人指正.转载请注明出处及作者,谢谢!
2006-02-17 10:49:00
1418
原创 doxygen 的使用
以前看java的时候, 知道有个javadoc 的工具, 并且顺带也知道了有一个叫做doxygen的工具, 可以很方便的生成文档. 可惜一直没有机会使用, 今天比较闲, 试用了一下, 还真不错, 功能满强的, 能够生成多种格式的文档, 而且可以定义生成的文档信息, very excellent ! 所以找了点教程, 放在这地方, 供自己和大家参考, 呵呵, 这是自己
2005-06-24 11:30:00
6503
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人