首页 - 神途资讯 > 某公司游戏平台源码

某公司游戏平台源码

发布于:2024-07-03 作者:admin 阅读:90

本人拿到关于的封装类的.h文件,实在不明白与之间的关系.不如大家帮我看看如何完善.cpp.恳请高人指点迷津.贴上三个文件..h, .h 及 .h.后两者是使用的地方,同时给出所有涉及的文件.我想高人一定可以通过这几个文件得出最终正确结论.谢谢!

////////////////////////////////////////////////////////////////////////////////////////////////////////.h----1

//线程

#

#

#

# ".h"

# "zlink.h""

# "ZLock.h"

#

# ()

#endif

{

;// 线程ID

;// 线程句柄

;// 线程退出事件, 当本线程被退出,那么置 为有信号,通知从中删除自已

(){

= = 0;

// add by

(const & )

= .;

= .;

= .;

bool == (const &s) const;

bool != (const &s) const;

};

bool :: == (const &s) const

this-> == s.;

bool :: != (const &s) const

!((*this) == s);

long ( *)(void *);

DWORD (void *);

//////////////////////////////////////////////////////////////////////

//

class {

:

;

;// 管理所有线程的数据,以防止资源不被回收

;// 有某个线程要退出的事件???

;// 主线程可以退出的事件,只到所有被管理的线程都退出才能退出

ead;// 主线程的数据放在这里

:

(){ = = NULL; }

~() { (.() == 0); }

//释放所有资源(())

//等待所有线程关闭

void ();

//初始化

Init();

//创建线程, 这个由调用,返回它的数据,同时记入

*(DWORD , long ( *)(void *),void *,DWORD );

//清除线程, 清除某个线程并且, 由线程调用,线程管理系统负责清理资源

void ( *);

//获得当前线程数据

void ( & );

//////////////////////////////////////////////////////////////////////////

() { ; }

:

void () { (); }

};

//////////////////////////////////////////////////////////////////////

//

class {

DWORD (void *);

:

*;

;

*;

;// 自已 的指针,它指向主线程的

:

void*;

;

;

:

();

~() { }

//run

//线程主运行函数

Run(void *);

// , 调用线程管理者的创建线程方法

(DWORD , long ( *)(void *),void *,DWORD );

//每个线程都必须调用这个函数,且如果返回true退出线程

bool ();

//关闭线程,阻塞操作

void ();

//sleep,可以唤醒;Sleep()相当于挂起线程

bool Sleep(DWORD time);

//////////////////////////////////////////////////////////////////////////

//设置

//属于初始化部分的设置,必须被调用

void ( *);

*() const { ; }

//Wake Up

void ();

//唤醒线程

void ();

//挂起线程,只到线程结束、进程结束,或者被

void ();

//get

();

//发送关闭线程消息,即时结束

void ();

vent();

() { ; }

// 设置数据

void ( pData) { = pData; }

// 获得数据

() { ; }

bool () {

// ;

true;

:

//线程离开,Run()函数自动调用

//重载Run()以后需要自己在线程结束时调用

void ();

};

::()

= NULL;

= NULL;

= NULL;

= NULL;

= NULL;

= NULL;

= NULL;

};

void ::()

if()

();

void ::( *)

();

= ;

void ::()

();

();

void ::()

Sleep();

::()

();

->;

void ::()

();

();

::vent()

( != NULL);

->();

#endif//#

////////////////////////////////////////////////////////////////////////////////////////////////////////.h----2

// 服务器 网络核心

#

#

# "TBase/.h"

# "TBase/.h"

# ".h"

# ".h"

# ".h"

#

# ()

#endif

////////////////////////////////////////////////////////////////////////////////

// TNet

TNet{

////////////////////////////////////////////////////////////////////////////

//

// 网络核心

class : {

:

//

int ( pAddr, pMsg,int ) = 0;

// 出错输出

Error( pAddr, hRet,const char* str) = 0;

// 获得连接地址私有数据

void ( pAddr, pData) = 0;

// 获得连接地址私有数据

( pAddr) = 0;

};

*;

////////////////////////////////////////////////////////////////////////////

//

// 网络核心

class : {

:

};

////////////////////////////////////////////////////////////////////////////

//

// 网络核心

class : {

:

};

};

#endif//

////////////////////////////////////////////////////////////////////////////////////////////////////////.h----3

因内容太长.请看附件

二维码

扫一扫关注我们

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,请告知我们,本站将立刻删除涉嫌侵权内容。

相关文章