gumingyaotangwei 的专栏

游戏架构,游戏引擎,游戏服务器,设计(C/C++),数据库,算法,电信协议,多媒体...

很幽默的讲解六种Socket I/O模型C++程序设计

本文简单介绍了当前Windows支持的各种Socket I/O模型,如果你发现其中存在什么错误请务必赐教。 一:select模型 二:WSAAsyncSelect模型 三:WSAEventSelect模型 四:Overlapped I/O 事件通知模型 五:Overlapped I/O ...

2012-03-31 19:32:41

阅读数:2421

评论数:0

setsockopt设置socket状态

1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket: BOOL bReuseaddr=TRUE; setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeo...

2012-03-31 13:50:35

阅读数:591

评论数:0

网卡的模式

改变模式需用程序实现如Sniffer类的软件一般都采用将网卡设置成混杂模式来获取数据包,设为混杂模式之后,因为网卡会接收所有能够接收到的数据,所以这个时候的数据量非常大,所以在设置为混杂模式同时,一般要设置过滤条件。sniffer之类的软件将网卡设置为混杂模式,只是供自己监听数据(根据用户的要求自...

2012-03-31 13:49:28

阅读数:1476

评论数:0

STL的三个基本容器 vector list deque

vector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随机存取,即[]操作符,但由于它的内存空间是连续的,所以在中间进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。这些都大大影响了v...

2012-03-31 13:17:34

阅读数:849

评论数:0

套接字选项和I/O控制命令

套接字选项和I/O控制命令    套接字一旦建立,通过套接字选项和I/O控制命令对各种属性进行操作,便可对套接字的行为产生影响。有的选项只用于信息的返回,而有的选项则可在应用程序中影响套接字的行为。I / O控制命令肯定会对套接字的行为产生影响。    下面着重讨论四个Winsock函数:ge...

2012-03-31 12:53:42

阅读数:896

评论数:0

IOCP在服务器开发中的应用

引言 基于Socket的网络通信服务已经使用得相当普遍,然而一个服务器应用程序,假如不能够同时为多个客户端提供服务,那它就没有什么意义可言。针对一个服务器应用程序底层通信模块的设计,要使其在给定的时间内同时控制几个套接字,采用重叠的I/O机制是比较好的,但是要求服务器在任何给定时间内都会为海...

2012-03-31 12:09:19

阅读数:3139

评论数:1

在VS中配置Lua

1、编译LUA 第1步: 从官方主页www.lua.org下载Lua源代码,最新版本为5.1.2。 解压之后找到“src”文件夹,这里面就是Lua了,不过还不能直接使用。 第2步: 使用任意ANSI C编译器,在这里使用VS2005编译LUA。具体步骤如下: 1、新建一个空的Conso...

2012-03-30 17:54:26

阅读数:1601

评论数:1

在Lua中使用自己的C函数

-------以下是Lua脚本-------- --test.lua LuaC_MessageBox( "Last is ShowMessage! This is real MessageBox!"); ---------通过LuaEdit语法测试才出鬼了--------...

2012-03-30 17:53:38

阅读数:614

评论数:0

Lua脚本在C++下的舞步

Lua脚本在C++下的舞步(一) 现在,越来越多的C++服务器和客户端融入了脚本的支持,尤其在网游领域,脚本语言已经渗透到了方方面面,比如你可以在你的客户端增加一个脚本,这个脚本将会帮你在界面上显示新的数据,亦或帮你完成某些任务,亦或帮你查看别的玩家或者NPC的状态。。。如此等等。 ...

2012-03-30 16:05:54

阅读数:1207

评论数:0

采访Lua发明人的一篇文章

Lua 是一门非常之小,但五脏俱全的动态语言。它由 Roberto Ierusalimschy、Luiz Henrique de Figueiredo 和 Waldemar Celes在1993年创建。Lua 拥有一组精简的强大特性,以及容易使用的 C API ,这使得它易于嵌入与扩展来表达特定领...

2012-03-30 16:03:02

阅读数:1264

评论数:0

线程堆栈!

一个线程的开销包括:       内核模式下的开销(内核堆栈,对象管理所需内存)       用户模式下的开销(线程局部存储、线程环境块、堆栈、CRT、MFC、COM等等等等)       通常,线程数目的瓶颈在于线程自己的堆栈。Visual C++编译器默认设置是每个线程的堆栈大小是1...

2012-03-30 15:55:12

阅读数:785

评论数:0

人工智能

1.感知系统(当前所能收集的信息) FPS:     玩家在哪里?,在看哪里?     周围的几何情况如何?     彼此使用的武器? RTS: 地图每个分区的力量平衡如何?     每种资源拥有多少?     单位有哪些类型?     在技术树中的地位如何?     游戏世界...

2012-03-30 15:28:57

阅读数:614

评论数:0

结合 异常捕获体系的 线程基类封装 (三)

//共享锁 #if defined(__WINDOWS__) class MyLock {  CRITICAL_SECTION m_Lock ; public :  MyLock( ){ InitializeCriticalSection(&m_Lock); } ;  ~My...

2012-03-30 14:32:50

阅读数:773

评论数:0

结合 异常捕获体系的 线程基类封装 (二)

#include "stdafx.h" //////////////////////////////////////////////////////////////////////////////// // // Thread.cpp // // // Last U...

2012-03-30 14:30:20

阅读数:881

评论数:0

结合 异常捕获体系的 线程基类封装 (一)

////////////////////////////////////////////////////////////////////// // // Thread.h // //   #ifndef __THREAD_H__ #define __THREAD_H__ ///...

2012-03-30 14:29:44

阅读数:871

评论数:0

值得借鉴的 异常捕获体系 (三)

#if defined(__WINDOWS__)  #if defined(NDEBUG)   #define __ENTER_FUNCTION {try{   #define __LEAVE_FUNCTION }catch(...){AssertSpecial(FALSE,__FUNCTI...

2012-03-30 14:26:38

阅读数:635

评论数:0

值得借鉴的 异常捕获体系 (二)

#include "stdafx.h" //-------------------------------------------------------------------------------- // // Filename   : Assert.cpp ...

2012-03-30 14:23:55

阅读数:637

评论数:0

值得借鉴的 异常捕获体系 (一)

//-------------------------------------------------------------------------------- // // Filename   : Assert.h // //-----------------------------...

2012-03-30 14:23:14

阅读数:792

评论数:0

#pragma pack 用法详解

pack 为 struct, union 和 class 等的成员对齐指定字节边界. 与编译选项(属性 -> 配置属性 -> C/C++ ->代码生成 -> 结构成员对齐)的 /Zp 开关不同, 它不针对整个项目, 而仅针对模块, 比如一个编译单元. 1. #prag...

2012-03-30 14:14:10

阅读数:513

评论数:0

c++ Oracle OCCI 编程

OCCI数据库ORACLE编程步骤 1. 配置环境 (1) Occi访问数据库需要occi.h头文件,此文件在oracle安装目录下,必须有oracle库的支持。安装oracle服务端或客户端; (2) 配置NLS_LANG环境变量,必须与数据库的字符编码一致,否则可能出现中文乱码; (3...

2012-03-09 18:14:18

阅读数:8803

评论数:0

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