liujiayu2的专栏

玩点技术

Mission系统预览

从大局上看Mission是和整体的MVC框架协作的,那ServerListData来说,ServerList这一个逻辑可以单独出来,维护三个位置Data、Mission、View 具体到list data的获取都直接由Mission完成,其他模块之需要使用就OK,Mission自己有策略决定何时...

2015-06-30 21:36:58

阅读数:646

评论数:0

大厅的列表服务预览

2015-06-30 21:36:13

阅读数:567

评论数:0

Module.h 网狐的“com”工具箱

Module.h     网狐的“com”工具箱: 简单介绍下这个东东,其实我以前分析的时候就说过了,这个设计看上去很美,其实用起来不那么方便。这不6603就没有这玩意了。     网狐的COM接口比较简单,只有两个接口 interface IUnknownEx   void Relea...

2015-06-30 21:35:37

阅读数:1487

评论数:0

关于网狐棋牌6603源码的整理、编译和搭建

最近换工作,趁着有一段清闲时间,整理了一下网狐棋牌的源码,这份源码下载很久了,一直呆在硬盘。这次正好好好看看。        网狐的代码质量很高,流露出来的代码也比较完整,基本上都能编译通过。但是要真的搭建起来,还是需要额外花一些功夫的。        我下载的是6603版本,经过分析...

2015-06-30 21:33:45

阅读数:2017

评论数:0

网狐的加密模块,映射加密算法分析

//发送映射 const BYTE g_SendByteMap[256]= {     0x70,0x2F,0x40,0x5F,0x44,0x8E,0x6E,0x45,0x7E,0xAB,0x2C,0x1F,0xB4,0xAC,0x9D,0x91,     0x0D,0x36,0x9B,0...

2015-06-30 21:32:52

阅读数:1446

评论数:0

网狐棋牌(十) 成也萧何败也肖何? IUnknowEx

相关UML: 看下某个查询接口的代码: ////////////////////////////////////////////////////////////////////////// //接口查询宏 #define QUERYINTERFACE(Interface...

2015-06-30 21:31:29

阅读数:994

评论数:0

网狐棋牌(八) 异步引擎 和 网狐棋牌(九) 服务引擎概览

相关UML: 核心技术在于:在指定的线程中创建窗口,然后向窗口发送消息,在窗口消息处理中调用外部回调。  ------------------------------------------------------------------------------ 网狐棋牌...

2015-06-30 21:30:57

阅读数:1258

评论数:0

网狐棋牌(六) DataBaseEngine 和 网狐棋牌(七) CEventService

相关UML: 使用数据库引擎必须持有数据库引擎内部队列,实现数据库回调接口(用来处理数据库操作请求),然后结果投递到调度引擎队列。 理解网络狐棋牌,最重要是理解两个概念: 1,队列服务 2,接口的传递 晚上分析IEventService,明天应该能把IServiceE...

2015-06-30 21:30:11

阅读数:826

评论数:0

网狐棋牌(五) TCPSocketEnging分析

相关UML: 网络引擎整体结构: SocketItem细节: 先来看几个底层结构: //重叠结构类 class COverLapped {     //变量定义 public:     WSABUF                           ...

2015-06-30 21:29:37

阅读数:1517

评论数:0

网狐棋牌(四) TimerEngine

相关UML: CTimerEngine成员变量:     //状态变量     DWORD                                m_dwTimerSpace;                    //时间间隔,这个值后来应该是给了定时器线程 protec...

2015-06-30 21:28:41

阅读数:1014

评论数:0

网狐棋牌(三) 调度引擎初步分析

相关UML: CAttempterEngine实现了两个接口:IQueueServiceSink、IAttemperEngine; 通过前面的分析,偶们了解到,IQueueServiceSink这个接口被是用来处理CQueueService中的数据的,根据上面的UML我们可以看到,...

2015-06-30 21:28:04

阅读数:1236

评论数:0

网狐棋牌(二) CQueueServiceEvent初步分析

相关UML: 代码分析: 首先CQueueServiceEvent这个名字很有诱惑,,,你感觉他是一个事件,其实不是。它实际的功能应该是一个带打包功能的事件队列,,,或者说是一个像指定的类似EventQueue的东东中投递事件。从接口上看,这个东东能投递TimerEvent  Data...

2015-06-30 21:27:25

阅读数:969

评论数:0

网狐棋牌(一) ServerKernel中的IQueueService接口分析

相关UML如下: 添加: 处理 关键代码解析:  1//开始服务  2bool __cdecl CQueueService::StartService()  3{  4    //效验参数  5    ASSERT(m_bServic...

2015-06-30 21:26:43

阅读数:1202

评论数:0

网狐棋牌游戏平台服务器架构设计分析

调用模型 模仿COM组件接口模式,利用面向对象思想多态性polymorphism,调用方保存着被调用方的基础接口指针(interface or sink钩子)(Pure Virtual Function),调用方直接调用接口指针内声明的纯虚方法,而此纯虚函数的具体逻辑由该接口的派生类实现。 示...

2015-06-30 21:25:21

阅读数:1989

评论数:1

gh0st支持win7和win8

打开server的until.cpp文件.在最后面#endif的上面加上下列代码     DWORD _stdcall LaunchAppIntoDifferentSession( LPTSTR lpCommand )     {     DWORD dwRet = 0;     PR...

2015-06-29 23:09:15

阅读数:2383

评论数:0

Event事件控制

事件对象就像一个开关:它只有两种状态---开和关。当一个事件处于”开”状态,我们称其为”有信号”否则称为”无信号”。可以在一个线程的执行函数中创建一个事件对象,然后观察它的状态,如果是”无信号”就让该线程睡眠,这样该线程占用的CPU时间就比较少。 产生事件对象的函数如下:   HANDLE C...

2015-06-28 23:30:54

阅读数:543

评论数:0

AcceptEx()函数详细解析

服务器要做的最普通的事情之一就是接受来自客户端的连接请求。在套接字上使用重叠I/O接受连接的惟一API就是AcceptEx()函数【注一】。有趣的是,通常的同步接受函数accept()的返回值是一个新的套接字,而AcceptEx()函数则需要另外一个套接字作为它的参数之一。这是因为AcceptEx...

2015-06-28 21:41:14

阅读数:2506

评论数:0

详解Windows内存分页机制

昨天新买了两本书, 看到了内存分页部分, 特此记录下, 没什么技术含量, 错误之处还请大牛指点. 大多数现代的操作系统都支持虚存, 这使得系统上的每个程序都拥有自己的地址空间. 每当程序读取内存时, 都必须指定一个地址. 对于每个进程, 该地址必须转换为实际的物理内存地址.  例如, 若我...

2015-06-28 11:11:41

阅读数:810

评论数:0

5种IO模式形象的比喻

老陈有一个在外地工作的女儿,不能经常回来,老陈和她通过信件联系。他们的信会被邮递员投递到他们的信箱里。   这和Socket模型非常类似。下面我就以老陈接收信件为例讲解SocketI/O模型。   一:select模型   老陈非常想看到女儿的信。以至于他每隔10分钟就下楼检查信箱,看是否有女儿的...

2015-06-28 11:09:31

阅读数:395

评论数:0

NAT类型及检测方法

一 NAT的类型 NAT可以分为很多种,但是最为普遍的是传统NAT,或者称为向外NAT。向外NAT在默认情况下只允许向外的Session穿越NAT,这就是我们最为常见的情况。 这种向外NAT又可以分为基本NAT(Basic NAT)和NAPT(Network Address/Port Tran...

2015-06-26 14:53:37

阅读数:502

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭