#ifndef __TIME_KEEPER_H__ #define __TIME_KEEPER_H__ #pragma once #include class TimeObject; class ConnectionTimeout; class TimeKeeper { public: TimeKeeper(); ~TimeKeeper(); VOID InitTimeKeeper( DWORD dwHashSize ); VOID ReleaseTimeKeeper(); VOID PushTimer( DWORD dwKey, TimeObject * pObj ); VOID KillTimer( DWORD dwKey, TimeObject ** ppObj = NULL ); TimeObject * PeekTimer( DWORD dwKey ); // ÀÎÁõÀ» À§ÇØ Çϳª´õ ۸¦ Ãß°¡ÇÔ TimeObject * PeekTimerByUserGUID( DWORD dwUserGUID ); VOID Update(); private: util::SolarHashTable m_TimeObjectHash; util::SolarHashTable m_TimeObjectHashByUserGUID; }; extern TimeKeeper g_TimeKeeper; #endif // __TIME_KEEPER_H__