diff options
author | Diva Canto | 2013-08-01 09:27:44 -0700 |
---|---|---|
committer | Diva Canto | 2013-08-01 09:27:44 -0700 |
commit | 59b461ac0eaae1cc34bb82431106fdf0476037f3 (patch) | |
tree | 648225cea5acef055c616c57efa171938558e211 /OpenSim | |
parent | Include missing reference that probably stops windows build from commit 12995... (diff) | |
download | opensim-SC-59b461ac0eaae1cc34bb82431106fdf0476037f3.zip opensim-SC-59b461ac0eaae1cc34bb82431106fdf0476037f3.tar.gz opensim-SC-59b461ac0eaae1cc34bb82431106fdf0476037f3.tar.bz2 opensim-SC-59b461ac0eaae1cc34bb82431106fdf0476037f3.tar.xz |
Issue: painfully slow terrain loading. The cause is commit d9d995914c5fba00d4ccaf66b899384c8ea3d5eb (r/23185) -- the WaitOne on the UDPServer. Putting it back to how it was done solves the issue. But this may impact CPU usage, so I'm pushing it to test if it does.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs index 85fe1a4..942c044 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs | |||
@@ -246,7 +246,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
246 | /// This allows the outbound loop to only operate when there is data to send rather than continuously polling. | 246 | /// This allows the outbound loop to only operate when there is data to send rather than continuously polling. |
247 | /// Some data is sent immediately and not queued. That data would not trigger this event. | 247 | /// Some data is sent immediately and not queued. That data would not trigger this event. |
248 | /// </remarks> | 248 | /// </remarks> |
249 | private AutoResetEvent m_dataPresentEvent = new AutoResetEvent(false); | 249 | //private AutoResetEvent m_dataPresentEvent = new AutoResetEvent(false); |
250 | 250 | ||
251 | private Pool<IncomingPacket> m_incomingPacketPool; | 251 | private Pool<IncomingPacket> m_incomingPacketPool; |
252 | 252 | ||
@@ -907,7 +907,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
907 | 907 | ||
908 | PacketPool.Instance.ReturnPacket(packet); | 908 | PacketPool.Instance.ReturnPacket(packet); |
909 | 909 | ||
910 | m_dataPresentEvent.Set(); | 910 | //m_dataPresentEvent.Set(); |
911 | } | 911 | } |
912 | 912 | ||
913 | /// <summary> | 913 | /// <summary> |
@@ -1919,12 +1919,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1919 | 1919 | ||
1920 | // If nothing was sent, sleep for the minimum amount of time before a | 1920 | // If nothing was sent, sleep for the minimum amount of time before a |
1921 | // token bucket could get more tokens | 1921 | // token bucket could get more tokens |
1922 | //if (!m_packetSent) | 1922 | if (!m_packetSent) |
1923 | // Thread.Sleep((int)TickCountResolution); | 1923 | Thread.Sleep((int)TickCountResolution); |
1924 | // | 1924 | // |
1925 | // Instead, now wait for data present to be explicitly signalled. Evidence so far is that with | 1925 | // Instead, now wait for data present to be explicitly signalled. Evidence so far is that with |
1926 | // modern mono it reduces CPU base load since there is no more continuous polling. | 1926 | // modern mono it reduces CPU base load since there is no more continuous polling. |
1927 | m_dataPresentEvent.WaitOne(100); | 1927 | //m_dataPresentEvent.WaitOne(100); |
1928 | 1928 | ||
1929 | Watchdog.UpdateThread(); | 1929 | Watchdog.UpdateThread(); |
1930 | } | 1930 | } |