⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 event.cpp

📁 奇迹世界公用文件源代码,研究网络游戏的朋友可以研究下
💻 CPP
字号:
/**
 捞亥飘 包访 扁瓷阑 力傍窍绰 努贰胶甫 沥狼窃
*/

#include "UtilityCommon.h"
#include "Event.h"

namespace util
{

static HANDLE Create(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCTSTR lpName); // 橇肺配 鸥涝 急攫(沥利 窃荐肺 按眉 急攫绝捞 荤侩 啊瓷窃)

CEvent::CEvent(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState)
{
	m_hEvent = Create(lpEventAttributes, bManualReset, bInitialState, NULL);
}

CEvent::CEvent(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, const _tstring& name)
{
	m_hEvent = Create(lpEventAttributes, bManualReset, bInitialState, name.c_str());
}

void CEvent::Wait() const
{ // 捞亥飘甫 扁促覆
	if(!Wait(INFINITE)) {
	}
}

BOOL CEvent::Wait(DWORD timeoutMillis) const
{ // 捞亥飘甫 瘤沥等 矫埃父怒 扁促覆
   BOOL ok;

   DWORD result = ::WaitForSingleObject(m_hEvent, timeoutMillis);

   if(result == WAIT_TIMEOUT) ok = false;
   else if(result == WAIT_OBJECT_0) ok = true;
   else {
	  return false;
   }
   
   return ok;
}

void CEvent::Reset(){ // 捞亥飘甫 厚劝己拳 窃
	if(!::ResetEvent(m_hEvent)){
		return;
	};
}

void CEvent::Set()
{ // 捞亥飘甫 劝己拳 窃
	if(!::SetEvent(m_hEvent)){
		return;
	}
}

void CEvent::Pulse()
{
	if(!::PulseEvent(m_hEvent)){
		return;
	};
}

CEvent::~CEvent(void)
{
}

HANDLE CEvent::GetEvent() const
{
	return m_hEvent;
}

static HANDLE Create(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCTSTR lpName)
{
   HANDLE hEvent = ::CreateEvent(lpEventAttributes, bManualReset, bInitialState, lpName);

   if(hEvent == NULL){
	  return NULL;
   }

   return hEvent;
}

}//End of namespace : util

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -