39 lines
810 B
C++
39 lines
810 B
C++
#ifndef _SELECT_SOCK_PROCESS_H_
|
|
#define _SELECT_SOCK_PROCESS_H_
|
|
|
|
/* select 模型的RunSock */
|
|
class CSelectRunSockProcesser : public CRunSockProcesser
|
|
{
|
|
typedef CRunSockProcesser INHERITED;
|
|
private:
|
|
#ifdef _MSC_VER
|
|
HANDLE m_hSelectThread;
|
|
HANDLE m_hAcceptThread;
|
|
#else
|
|
pthread_t m_hSelectThread;
|
|
pthread_t m_hAcceptThread;
|
|
#endif
|
|
|
|
#ifdef _MSC_VER
|
|
static VOID SelectThreadRoutine(void *pRunSock);
|
|
static VOID AcceptThreadRoutine(void *pRunSock);
|
|
#else
|
|
static void* SelectThreadRoutine(void *pRunSock);
|
|
static void* AcceptThreadRoutine(void *pRunSock);
|
|
#endif
|
|
|
|
INT SelectSessions(PRUNGATEUSERSESSION pSession, INT nMax);
|
|
|
|
BOOL StartSelectThreads();
|
|
VOID StopSelectThreads();
|
|
public:
|
|
CSelectRunSockProcesser();
|
|
~CSelectRunSockProcesser();
|
|
|
|
BOOL Start();
|
|
VOID Stop();
|
|
};
|
|
|
|
#endif
|
|
|