mirror of
https://github.com/mangosfour/server.git
synced 2025-12-16 22:37:02 +00:00
[10848] New system for parallelizing client packet processing. Handle WorldSession updates in Map::Update() where we are safe to proceed. Thank you for all your feedback!
Signed-off-by: Ambal <pogrebniak@gala.net>
This commit is contained in:
parent
4e72ead2fb
commit
5f539117a4
8 changed files with 1447 additions and 1322 deletions
|
|
@ -1882,11 +1882,14 @@ void World::UpdateSessions( uint32 diff )
|
|||
next = itr;
|
||||
++next;
|
||||
///- and remove not active sessions from the list
|
||||
if(!itr->second->Update(diff)) // As interval = 0
|
||||
WorldSession * pSession = itr->second;
|
||||
WorldSessionFilter updater(pSession);
|
||||
|
||||
if(!pSession->Update(diff, updater)) // As interval = 0
|
||||
{
|
||||
RemoveQueuedSession (itr->second);
|
||||
delete itr->second;
|
||||
RemoveQueuedSession(pSession);
|
||||
m_sessions.erase(itr);
|
||||
delete pSession;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue