* Finally, don't worry about doing containment checks on other dictionaries if we are adding a client
* Regarding an earlier change, I think it would be possible to eliminate the creation of new IPEndPoints on every end receive if we did the client circuit lookup before starting the next receive. However, this would be a performance trade off and hence not worth trying without performance testing0.6.0-stable
parent
4ccac88cf6
commit
400314e884
|
@ -382,13 +382,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
if (!foundExistingCircuit)
|
if (!foundExistingCircuit)
|
||||||
{
|
{
|
||||||
// This doesn't need locking as it's synchronized data
|
// This doesn't need locking as it's synchronized data
|
||||||
if (!clientCircuits_reverse.ContainsKey(useCircuit.CircuitCode.Code))
|
clientCircuits_reverse[useCircuit.CircuitCode.Code] = epSender;
|
||||||
clientCircuits_reverse.Add(useCircuit.CircuitCode.Code, epSender);
|
|
||||||
|
|
||||||
lock (proxyCircuits)
|
lock (proxyCircuits)
|
||||||
{
|
{
|
||||||
if (!proxyCircuits.ContainsKey(useCircuit.CircuitCode.Code))
|
proxyCircuits[useCircuit.CircuitCode.Code] = epProxy;
|
||||||
proxyCircuits.Add(useCircuit.CircuitCode.Code, epProxy);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PacketServer.AddNewClient(epSender, useCircuit, m_assetCache, m_circuitManager, epProxy);
|
PacketServer.AddNewClient(epSender, useCircuit, m_assetCache, m_circuitManager, epProxy);
|
||||||
|
|
Loading…
Reference in New Issue