Xengine: try to reduce memory pressure of scripts compile. Still ugly code, possible mistakes, but i need to share it before i loose it :) )

This commit is contained in:
UbitUmarov
2016-08-31 09:15:08 +01:00
parent 4e1784d069
commit 5afc5fe343
5 changed files with 338 additions and 357 deletions

View File

@@ -1278,6 +1278,10 @@ namespace OpenSim.Region.ScriptEngine.XEngine
}
}
// do not load a assembly on top of a lot of to release memory
// also yield a bit
GC.Collect(2);
ScriptInstance instance = null;
lock (m_Scripts)
{
@@ -1501,11 +1505,12 @@ namespace OpenSim.Region.ScriptEngine.XEngine
m_PrimObjects[localID].Add(itemID);
}
if (!m_Assemblies.ContainsKey(assetID))
m_Assemblies[assetID] = assemblyPath;
lock (m_AddingAssemblies)
{
if (!m_Assemblies.ContainsKey(assetID))
m_Assemblies[assetID] = assemblyPath;
m_AddingAssemblies[assemblyPath]--;
}