aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorUbitUmarov2014-08-10 14:49:58 +0100
committerUbitUmarov2014-08-10 14:49:58 +0100
commitebc18a80bf87ca204c5d590bec0b2415f010ff83 (patch)
treeafd607beef9b3d07ef769c8d52e2da589fa4a0a9
parentMerge branch 'master' into ubitworkmaster (diff)
downloadopensim-SC_OLD-ebc18a80bf87ca204c5d590bec0b2415f010ff83.zip
opensim-SC_OLD-ebc18a80bf87ca204c5d590bec0b2415f010ff83.tar.gz
opensim-SC_OLD-ebc18a80bf87ca204c5d590bec0b2415f010ff83.tar.bz2
opensim-SC_OLD-ebc18a80bf87ca204c5d590bec0b2415f010ff83.tar.xz
OutgoingPacketHandler can not be paced by hits on SendPacket()
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs12
1 files changed, 8 insertions, 4 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
index a3fdae1..e317fc0 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
@@ -1418,6 +1418,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1418 queue.Enqueue(buffer); 1418 queue.Enqueue(buffer);
1419 return; 1419 return;
1420 } 1420 }
1421
1421 else if (packet.Type == PacketType.CompleteAgentMovement) 1422 else if (packet.Type == PacketType.CompleteAgentMovement)
1422 { 1423 {
1423 // Send ack straight away to let the viewer know that we got it. 1424 // Send ack straight away to let the viewer know that we got it.
@@ -2150,13 +2151,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2150 2151
2151 // If nothing was sent, sleep for the minimum amount of time before a 2152 // If nothing was sent, sleep for the minimum amount of time before a
2152 // token bucket could get more tokens 2153 // token bucket could get more tokens
2153 //if (!m_packetSent) 2154
2154 // Thread.Sleep((int)TickCountResolution); 2155 if (!m_packetSent)
2156// Thread.Sleep((int)TickCountResolution);
2157 Thread.Sleep(20); // be independent of TickCountResolution
2155 // 2158 //
2156 // Instead, now wait for data present to be explicitly signalled. Evidence so far is that with 2159 // Instead, now wait for data present to be explicitly signalled. Evidence so far is that with
2157 // modern mono it reduces CPU base load since there is no more continuous polling. 2160 // modern mono it reduces CPU base load since there is no more continuous polling.
2158 if (!m_packetSent) 2161 // this misses heavy load cases
2159 m_dataPresentEvent.WaitOne(100); 2162// if (!m_packetSent)
2163// m_dataPresentEvent.WaitOne(100);
2160 2164
2161 Watchdog.UpdateThread(); 2165 Watchdog.UpdateThread();
2162 } 2166 }