Initial commit
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
#ifndef MessageThreadH
|
||||
#define MessageThreadH
|
||||
|
||||
#include "thread.h"
|
||||
#include "Socket.h"
|
||||
#include "MessageDef.h"
|
||||
|
||||
#pragma once
|
||||
|
||||
// CUDPMessageReceiveThread
|
||||
//
|
||||
class CUDPMessageReceiveThread : public CThread
|
||||
{
|
||||
public:
|
||||
void Main();
|
||||
CUDPMessageReceiveThread(unsigned int nStackSize, CUDPSocket * pSocket);
|
||||
virtual void Terminate() ;
|
||||
|
||||
protected:
|
||||
CUDPSocket * m_pSocket;
|
||||
char m_sBuf[MAX_UDP_PACKET_SIZE];//实现一次读取需要的变量
|
||||
|
||||
TNETMESSAGE * ReadMessage(unsigned int &nIpAddr,unsigned short &nPort);
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// CMessageHandleThread
|
||||
//
|
||||
class CMessageHandleThread : public CThread
|
||||
{
|
||||
public:
|
||||
void Main();
|
||||
CMessageHandleThread(unsigned int nStackSize, CUDPSocket * pSocket);
|
||||
virtual void Terminate() ;
|
||||
|
||||
void SetPeerAddress( unsigned int nIpAddr,unsigned short nPort ){
|
||||
m_nPeerIp = nIpAddr;
|
||||
m_nPeerPort = nPort;
|
||||
};
|
||||
|
||||
void SetRequestMsg( TNETMESSAGE* pMsg ){
|
||||
m_pRequestMsg = pMsg;
|
||||
};
|
||||
|
||||
protected:
|
||||
CUDPSocket * m_pSocket;
|
||||
unsigned int m_nPeerIp;
|
||||
unsigned short m_nPeerPort;
|
||||
|
||||
TNETMESSAGE * m_pRequestMsg;
|
||||
|
||||
void HandleGerneralMessage();
|
||||
void HandleUpdateMessage();
|
||||
void HandleUploadMessage();
|
||||
|
||||
int SendMessage( TNETMESSAGE * pMsg );
|
||||
};
|
||||
|
||||
#pragma warning( disable : 4786 )
|
||||
#include <list>
|
||||
using namespace std;
|
||||
|
||||
typedef list< CMessageHandleThread* > MHTHREADLIST;
|
||||
|
||||
#endif //_MESSAGETHREAD_H_
|
||||
Reference in New Issue
Block a user