Revert the XEngine memleak patch, it causes premature GC.

This matches behavior seen with an earlier attempt to do this, apparently
the sponsor mechanism does't work in Mono
This commit is contained in:
Melanie
2009-08-07 03:04:06 +01:00
parent ed3b21ce4e
commit f8d8366bfa
11 changed files with 68 additions and 73 deletions

View File

@@ -272,10 +272,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine
instance.ClearQueue();
instance.Stop(0);
// Release events, timer, etc
//
instance.DestroyScriptInstance();
// Unload scripts and app domains
// Must be done explicitly because they have infinite
// lifetime
@@ -286,6 +282,10 @@ namespace OpenSim.Region.ScriptEngine.XEngine
m_DomainScripts.Remove(instance.AppDomain);
UnloadAppDomain(instance.AppDomain);
}
// Release events, timer, etc
//
instance.DestroyScriptInstance();
}
m_Scripts.Clear();
m_PrimObjects.Clear();
@@ -802,9 +802,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine
}
}
instance.RemoveState();
instance.DestroyScriptInstance();
m_DomainScripts[instance.AppDomain].Remove(instance.ItemID);
if (m_DomainScripts[instance.AppDomain].Count == 0)
{
@@ -812,6 +809,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
UnloadAppDomain(instance.AppDomain);
}
instance.RemoveState();
instance.DestroyScriptInstance();
instance = null;
ObjectRemoved handlerObjectRemoved = OnObjectRemoved;