diff options
author | UbitUmarov | 2016-07-07 19:54:52 +0100 |
---|---|---|
committer | UbitUmarov | 2016-07-07 19:54:52 +0100 |
commit | a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b (patch) | |
tree | 6de3b9bae902938b1c657f2b786ced732c8cbf2c /OpenSim | |
parent | reduce the initial capacity of InventoryStringBuilder the 16k i added is (diff) | |
download | opensim-SC-a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b.zip opensim-SC-a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b.tar.gz opensim-SC-a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b.tar.bz2 opensim-SC-a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b.tar.xz |
reduce lock time during object inventory ProcessInventoryBackup
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 2841f7f..3b029f2 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -1246,17 +1246,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
1246 | // if (HasInventoryChanged) | 1246 | // if (HasInventoryChanged) |
1247 | // { | 1247 | // { |
1248 | Items.LockItemsForRead(true); | 1248 | Items.LockItemsForRead(true); |
1249 | ICollection<TaskInventoryItem> itemsvalues = Items.Values; | ||
1250 | HasInventoryChanged = false; | ||
1251 | Items.LockItemsForRead(false); | ||
1249 | try | 1252 | try |
1250 | { | 1253 | { |
1251 | datastore.StorePrimInventory(m_part.UUID, Items.Values); | 1254 | datastore.StorePrimInventory(m_part.UUID, itemsvalues); |
1252 | } | 1255 | } |
1253 | catch {} | 1256 | catch {} |
1254 | |||
1255 | HasInventoryChanged = false; | ||
1256 | |||
1257 | Items.LockItemsForRead(false); | ||
1258 | |||
1259 | |||
1260 | // } | 1257 | // } |
1261 | } | 1258 | } |
1262 | 1259 | ||