void CBaseCommand::Init(const char* pFileName) { ReadIniFile(pFileName); //m_objLSServer.Init(1, "127.0.0.1", 10080, m_pServerObject); m_objLSServer.Init(1, m_szLSIP, m_u4LSPort, m_pServerObject); vecControlInfo objControlInfo; m_pServerObject->GetControlListen()->ShowListen(objControlInfo); //自动得到当前开放的IP和端口,然后记录下来,发送给远端LS m_objLSServer.Set_LG_Info(objControlInfo[0].m_szListenIP, objControlInfo[0].m_u4Port, (uint32)m_pServerObject->GetControlListen()->GetServerID()); m_objLSServer.Connect(); ActiveTimer* pTimer = m_pServerObject->GetTimerManager(); m_u4TimeID = (uint32)pTimer->schedule(this, NULL, ACE_OS::gettimeofday() + ACE_Time_Value(MAX_TIMER_INTERVAL), ACE_Time_Value(MAX_TIMER_INTERVAL)); }
void CUnit_TimerManager::Test_TimerManager(void) { bool blRet = false; ActiveTimer objActiveTimer; objActiveTimer.activate(); ACE_Time_Value tvNow = ACE_OS::gettimeofday(); long lTimerID = objActiveTimer.schedule(m_pTimeTask, NULL, tvNow + ACE_Time_Value(0, 1000)); if (-1 == lTimerID) { CPPUNIT_ASSERT_MESSAGE("[Test_TimerManager]schedule is fail.", true == blRet); } ACE_Time_Value tvSleep(0, 2000); ACE_OS::sleep(tvSleep); objActiveTimer.deactivate(); objActiveTimer.close(); ACE_Time_Value tvSleepClose(0, 1000); ACE_OS::sleep(tvSleepClose); OUR_DEBUG((LM_INFO, "[CUnit_TimerManager]objActiveTimer is close.\n")); }