*Update difftime record.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-01-06 15:48:42 -06:00
parent 290a187592
commit bacbd4a782
7 changed files with 22 additions and 10 deletions

View File

@@ -587,4 +587,4 @@ void WorldSession::HandleChatIgnoredOpcode(WorldPacket& recv_data )
void WorldSession::HandleChannelDeclineInvite(WorldPacket &recvPacket)
{
sLog.outDebug("Opcode %u", recvPacket.GetOpcode());
}
}

View File

@@ -63,4 +63,4 @@ extern UNORDERED_MAP<uint32, FormationMember*> CreatureGroupMap;
#define formation_mgr Trinity::Singleton<CreatureGroupManager>::Instance()
#endif
#endif

View File

@@ -246,17 +246,23 @@ MapManager::Update(time_t diff)
if( !i_timer.Passed() )
return;
sWorld.RecordTimeDiff(NULL);
ObjectAccessor::Instance().UpdatePlayers(i_timer.GetCurrent());
sWorld.RecordTimeDiff("UpdatePlayers");
for(MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter)
{
checkAndCorrectGridStatesArray(); // debugging code, should be deleted some day
iter->second->Update(i_timer.GetCurrent());
sLog.outDebugInLine("Difftime Map %u ", iter->second->GetId());
sWorld.RecordTimeDiff("UpdateMap");
}
ObjectAccessor::Instance().Update(i_timer.GetCurrent());
for (TransportSet::iterator iter = m_Transports.begin(); iter != m_Transports.end(); ++iter)
(*iter)->Update(i_timer.GetCurrent());
sWorld.RecordTimeDiff("UpdateTransports");
i_timer.SetCurrent(0);
}

View File

@@ -6363,4 +6363,4 @@ void Spell::EffectRedirectThreat(uint32 /*i*/)
{
if(unitTarget)
m_caster->SetReducedThreatPercent((uint32)damage, unitTarget->GetGUID());
}
}

View File

@@ -1422,6 +1422,11 @@ void World::RecordTimeDiff(const char *text)
{
if(m_updateTimeCount != 1)
return;
if(!text)
{
m_currentTime = getMSTime();
return;
}
sLog.outDebugInLine("Difftime ");
sLog.outDebugInLine(text);
uint32 thisTime = getMSTime();
@@ -1440,7 +1445,6 @@ void World::Update(time_t diff)
sLog.outString("Update time diff: %u. Players online: %u.", m_updateTimeSum / m_updateTimeCount, GetActiveSessionCount());
m_updateTimeSum = m_updateTime;
m_updateTimeCount = 1;
m_currentTime = getMSTime();
}
else
{
@@ -1527,8 +1531,8 @@ void World::Update(time_t diff)
}
}
}
RecordTimeDiff("UpdateAuction");
RecordTimeDiff(NULL);
/// <li> Handle session updates when the timer has passed
if (m_timers[WUPDATE_SESSIONS].Passed())
{
@@ -1568,7 +1572,6 @@ void World::Update(time_t diff)
m_timers[WUPDATE_UPTIME].Reset();
WorldDatabase.PExecute("UPDATE uptime SET uptime = %d, maxplayers = %d WHERE starttime = " I64FMTD, tmpDiff, maxClientsNum, uint64(m_startTime));
}
RecordTimeDiff("UpdateWeatherAndUptime");
/// <li> Handle all other objects
if (m_timers[WUPDATE_OBJECTS].Passed())
@@ -1577,16 +1580,20 @@ void World::Update(time_t diff)
///- Update objects when the timer has passed (maps, transport, creatures,...)
MapManager::Instance().Update(diff); // As interval = 0
RecordTimeDiff(NULL);
///- Process necessary scripts
if (!m_scriptSchedule.empty())
ScriptsProcess();
RecordTimeDiff("UpdateScriptsProcess");
sBattleGroundMgr.Update(diff);
RecordTimeDiff("UpdateBattleGroundMgr");
sOutdoorPvPMgr.Update(diff);
RecordTimeDiff("UpdateOutdoorPvPMgr");
}
RecordTimeDiff("UpdateMaps");
RecordTimeDiff(NULL);
// execute callbacks from sql queries that were queued recently
UpdateResultQueue();
RecordTimeDiff("UpdateResultQueue");
@@ -1617,7 +1624,6 @@ void World::Update(time_t diff)
// And last, but not least handle the issued cli commands
ProcessCliCommands();
RecordTimeDiff("UpdateRemainingThings");
}
void World::ForceGameEventUpdate()

View File

@@ -517,6 +517,7 @@ class World
void SetScriptsVersion(char const* version) { m_ScriptsVersion = version ? version : "unknown scripting library"; }
char const* GetScriptsVersion() { return m_ScriptsVersion.c_str(); }
void RecordTimeDiff(const char * text);
protected:
void _UpdateGameTime();
void ScriptsProcess();
@@ -539,7 +540,6 @@ class World
uint32 m_updateTime, m_updateTimeSum;
uint32 m_updateTimeCount;
uint32 m_currentTime;
void RecordTimeDiff(const char * text);
typedef UNORDERED_MAP<uint32, Weather*> WeatherMap;
WeatherMap m_weathers;

View File

@@ -569,4 +569,4 @@ bool ChatHandler::HandleDebugHostilRefList(const char * /*args*/)
}
SendSysMessage("End of hostil reference list.");
return true;
}
}