mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 11:57:03 +08:00
* Rewrote ClientManager to remove Lindenisms from OpenSim core, improve performance by removing locks, and replace LLUDPClientCollection
* Removed the confusing (and LL-specific) shutdowncircuit parameter from IClientAPI.Close() * Updated the LLUDP code to only use ClientManager instead of trying to synchronize ClientManager and m_clients * Remove clients asynchronously since it is a very slow operation (including a 2000ms sleep)
This commit is contained in:
@@ -408,7 +408,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
}
|
||||
ViewerEffectPacket.EffectBlock[] effectBlockArray = effectBlock.ToArray();
|
||||
|
||||
ClientManager.ForEachClient(
|
||||
ClientManager.ForEach(
|
||||
delegate(IClientAPI client)
|
||||
{
|
||||
if (client.AgentId != remoteClient.AgentId)
|
||||
|
||||
@@ -867,7 +867,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
Thread.Sleep(500);
|
||||
|
||||
// Stop all client threads.
|
||||
ForEachScenePresence(delegate(ScenePresence avatar) { avatar.ControllingClient.Close(true); });
|
||||
ForEachScenePresence(delegate(ScenePresence avatar) { avatar.ControllingClient.Close(); });
|
||||
|
||||
// Stop updating the scene objects and agents.
|
||||
//m_heartbeatTimer.Close();
|
||||
@@ -3372,7 +3372,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
loggingOffUser.ControllingClient.Kick(message);
|
||||
// Give them a second to receive the message!
|
||||
Thread.Sleep(1000);
|
||||
loggingOffUser.ControllingClient.Close(true);
|
||||
loggingOffUser.ControllingClient.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -3543,7 +3543,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
presence.ControllingClient.SendShutdownConnectionNotice();
|
||||
}
|
||||
|
||||
presence.ControllingClient.Close(true);
|
||||
presence.ControllingClient.Close();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user