aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
diff options
context:
space:
mode:
authorJohn Hurliman2009-10-13 18:56:54 -0700
committerJohn Hurliman2009-10-13 18:56:54 -0700
commite8c1e69a0dbab1a7db894eeff6b052bbd350a8f5 (patch)
tree6d29a3bae418c1c5a06e3f1b8ad4a59db57a8d9e /OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
parent* Consolidated adding / removing ClientManager IClientAPIs to two places in S... (diff)
downloadopensim-SC_OLD-e8c1e69a0dbab1a7db894eeff6b052bbd350a8f5.zip
opensim-SC_OLD-e8c1e69a0dbab1a7db894eeff6b052bbd350a8f5.tar.gz
opensim-SC_OLD-e8c1e69a0dbab1a7db894eeff6b052bbd350a8f5.tar.bz2
opensim-SC_OLD-e8c1e69a0dbab1a7db894eeff6b052bbd350a8f5.tar.xz
* Copied LocklessQueue.cs into OpenSim.Framework and added the .Count property and .Clear() method
* Changed the way the QueueEmpty callback is fired. It will be fired asynchronously as soon as an empty queue is detected (this can happen immediately following a dequeue), and will not be fired again until at least one packet is dequeued from that queue. This will give callbacks advanced notice of an empty queue and prevent callbacks from stacking up while the queue is empty * Added LLUDPClient.IsConnected checks in several places to prevent unwanted network activity after a client disconnects * Prevent LLClientView.Close() from being called twice every disconnect * Removed the packet resend limit and improved the client timeout check
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs11
1 files changed, 4 insertions, 7 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 0acf6e8..ac558ff 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -433,13 +433,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
433 // Remove ourselves from the scene 433 // Remove ourselves from the scene
434 m_scene.RemoveClient(AgentId); 434 m_scene.RemoveClient(AgentId);
435 435
436 //m_log.InfoFormat("[CLIENTVIEW] Memory pre GC {0}", System.GC.GetTotalMemory(false));
437 //GC.Collect();
438 //m_log.InfoFormat("[CLIENTVIEW] Memory post GC {0}", System.GC.GetTotalMemory(true));
439
440 // FIXME: Is this still necessary?
441 //Thread.Sleep(2000);
442
443 // Shut down timers. Thread Context of this method is murky. Lock all timers 436 // Shut down timers. Thread Context of this method is murky. Lock all timers
444 if (m_avatarTerseUpdateTimer.Enabled) 437 if (m_avatarTerseUpdateTimer.Enabled)
445 lock (m_avatarTerseUpdateTimer) 438 lock (m_avatarTerseUpdateTimer)
@@ -461,6 +454,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
461 454
462 // Disable UDP handling for this client 455 // Disable UDP handling for this client
463 m_udpClient.Shutdown(); 456 m_udpClient.Shutdown();
457
458 //m_log.InfoFormat("[CLIENTVIEW] Memory pre GC {0}", System.GC.GetTotalMemory(false));
459 //GC.Collect();
460 //m_log.InfoFormat("[CLIENTVIEW] Memory post GC {0}", System.GC.GetTotalMemory(true));
464 } 461 }
465 462
466 public void Kick(string message) 463 public void Kick(string message)