give up calling gc.collect on flotsamcache. Did nothing visible and has negative side effects
parent
ba972b50ed
commit
b2068fd39f
|
@ -911,27 +911,30 @@ namespace OpenSim.Region.CoreModules.Asset
|
||||||
gatherer.AddGathered(s.RegionInfo.RegionSettings.TerrainTexture4, (sbyte)AssetType.Texture);
|
gatherer.AddGathered(s.RegionInfo.RegionSettings.TerrainTexture4, (sbyte)AssetType.Texture);
|
||||||
gatherer.AddGathered(s.RegionInfo.RegionSettings.TerrainImageID, (sbyte)AssetType.Texture);
|
gatherer.AddGathered(s.RegionInfo.RegionSettings.TerrainImageID, (sbyte)AssetType.Texture);
|
||||||
|
|
||||||
s.ForEachSOG(delegate(SceneObjectGroup e)
|
EntityBase[] entities = s.Entities.GetEntities();
|
||||||
|
for (int i = 0; i < entities.Length; ++i)
|
||||||
{
|
{
|
||||||
if(!m_timerRunning && !tryGetUncached || e.IsDeleted)
|
if (!m_timerRunning && !tryGetUncached)
|
||||||
return;
|
break;
|
||||||
|
|
||||||
|
EntityBase entity = entities[i];
|
||||||
|
if(entity is SceneObjectGroup)
|
||||||
|
{
|
||||||
|
SceneObjectGroup e = entity as SceneObjectGroup;
|
||||||
|
if(e.IsDeleted)
|
||||||
|
continue;
|
||||||
|
|
||||||
gatherer.AddForInspection(e);
|
gatherer.AddForInspection(e);
|
||||||
gatherer.GatherAll();
|
gatherer.GatherAll();
|
||||||
|
|
||||||
if (++cooldown > 200)
|
if (++cooldown > 200)
|
||||||
{
|
{
|
||||||
GC.Collect();
|
|
||||||
gatherer.AssetGetCount = 0;
|
|
||||||
Thread.Sleep(50);
|
Thread.Sleep(50);
|
||||||
cooldown = 0;
|
cooldown = 0;
|
||||||
}
|
}
|
||||||
else if(gatherer.AssetGetCount > 200)
|
|
||||||
{
|
|
||||||
GC.Collect();
|
|
||||||
gatherer.AssetGetCount = 0;
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
entities = null;
|
||||||
if (!m_timerRunning && !tryGetUncached)
|
if (!m_timerRunning && !tryGetUncached)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -961,8 +964,8 @@ namespace OpenSim.Region.CoreModules.Asset
|
||||||
gatherer.GatheredUuids.Clear();
|
gatherer.GatheredUuids.Clear();
|
||||||
gatherer.FailedUUIDs.Clear();
|
gatherer.FailedUUIDs.Clear();
|
||||||
gatherer.UncertainAssetsUUIDs.Clear();
|
gatherer.UncertainAssetsUUIDs.Clear();
|
||||||
|
gatherer = null;
|
||||||
|
|
||||||
GC.Collect();
|
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue