From b77c48e75e5027eb8ae421e9d3105eae71cd4f52 Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Wed, 20 Feb 2008 01:17:21 +0000 Subject: * Cleanup of some memory consuming items on ScenePresence.Close(). * Untangled a tangly shutdown loop for the ScenePresence. * Suggested to the Garbage Collector that this may be a good time to >.>, <.< *gasp* collect the memory. --- OpenSim/Region/Environment/Scenes/ScenePresence.cs | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'OpenSim/Region/Environment/Scenes/ScenePresence.cs') diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 1767623..4f68817 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs @@ -617,6 +617,11 @@ namespace OpenSim.Region.Environment.Scenes } } + public List GetKnownRegionList() + { + return m_knownChildRegions; + } + #endregion #region Event Handlers @@ -1767,7 +1772,25 @@ namespace OpenSim.Region.Environment.Scenes internal void Close() { + lock (m_knownPrimUUID) + { + m_knownPrimUUID.Clear(); + } + lock (m_knownChildRegions) + { + m_knownChildRegions.Clear(); + } + lock (m_updateTimes) + { + m_updateTimes.Clear(); + } + lock (m_partsUpdateQueue) + { + m_partsUpdateQueue.Clear(); + } + RemoveFromPhysicalScene(); + GC.Collect(); } } } -- cgit v1.1