aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Grids/Notifiers
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2015-03-01 18:40:46 +0100
committerNayd <dnpd.dd@gmail.com>2015-03-18 00:09:32 +0000
commit034dbe267df49b98448e9000c7c534619612bdbc (patch)
tree48acf771880d4c2983c65949bb641fc2dbc21721 /src/server/game/Grids/Notifiers
parentf3f44c468de781ec6d807483cd4d8917189249c1 (diff)
Core/Player: Optimize Player::HaveAtClient() performance
Change m_clientGUIDs from std::set to std::unordered_set to reduce by 2.7x times the cpu usage in Player::HaveAtClient() (cherry picked from commit 49ececf03830ca1d3df45bec1cd7f657d309450b)
Diffstat (limited to 'src/server/game/Grids/Notifiers')
-rw-r--r--src/server/game/Grids/Notifiers/GridNotifiers.cpp2
-rw-r--r--src/server/game/Grids/Notifiers/GridNotifiers.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.cpp b/src/server/game/Grids/Notifiers/GridNotifiers.cpp
index 533f2845b17..d5562a9a3c7 100644
--- a/src/server/game/Grids/Notifiers/GridNotifiers.cpp
+++ b/src/server/game/Grids/Notifiers/GridNotifiers.cpp
@@ -65,7 +65,7 @@ void VisibleNotifier::SendToSelf()
}
}
- for (GuidSet::const_iterator it = vis_guids.begin(); it != vis_guids.end(); ++it)
+ for (auto it = vis_guids.begin(); it != vis_guids.end(); ++it)
{
i_player.m_clientGUIDs.erase(*it);
i_data.AddOutOfRangeGUID(*it);
diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.h b/src/server/game/Grids/Notifiers/GridNotifiers.h
index ae8c96aff94..0936f8ff753 100644
--- a/src/server/game/Grids/Notifiers/GridNotifiers.h
+++ b/src/server/game/Grids/Notifiers/GridNotifiers.h
@@ -45,7 +45,7 @@ namespace Trinity
Player &i_player;
UpdateData i_data;
std::set<Unit*> i_visibleNow;
- GuidSet vis_guids;
+ GuidUnorderedSet vis_guids;
VisibleNotifier(Player &player) : i_player(player), i_data(player.GetMapId()), vis_guids(player.m_clientGUIDs) { }
template<class T> void Visit(GridRefManager<T> &m);