aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/PriorityQueue.cs
diff options
context:
space:
mode:
authorUbitUmarov2014-08-23 20:59:11 +0100
committerUbitUmarov2014-08-23 20:59:11 +0100
commit63d1916f511fdbbec8bc111f4bf80b3e4e0bc267 (patch)
tree859db7bf594ac204a786cc41599fdea6727361da /OpenSim/Framework/PriorityQueue.cs
parent back to sending attachment sog kills in place of the hack. This is the (diff)
downloadopensim-SC-63d1916f511fdbbec8bc111f4bf80b3e4e0bc267.zip
opensim-SC-63d1916f511fdbbec8bc111f4bf80b3e4e0bc267.tar.gz
opensim-SC-63d1916f511fdbbec8bc111f4bf80b3e4e0bc267.tar.bz2
opensim-SC-63d1916f511fdbbec8bc111f4bf80b3e4e0bc267.tar.xz
Remove entities from updates queues on kill. Do it sync so enqueues after
the kill work
Diffstat (limited to 'OpenSim/Framework/PriorityQueue.cs')
-rw-r--r--OpenSim/Framework/PriorityQueue.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/OpenSim/Framework/PriorityQueue.cs b/OpenSim/Framework/PriorityQueue.cs
index d6c39a7..4f05f65 100644
--- a/OpenSim/Framework/PriorityQueue.cs
+++ b/OpenSim/Framework/PriorityQueue.cs
@@ -134,6 +134,21 @@ namespace OpenSim.Framework
134 return true; 134 return true;
135 } 135 }
136 136
137
138 public void Remove(List<uint> ids)
139 {
140 LookupItem lookup;
141
142 foreach (uint localid in ids)
143 {
144 if (m_lookupTable.TryGetValue(localid, out lookup))
145 {
146 lookup.Heap.Remove(lookup.Handle);
147 m_lookupTable.Remove(localid);
148 }
149 }
150 }
151
137 /// <summary> 152 /// <summary>
138 /// Remove an item from one of the queues. Specifically, it removes the 153 /// Remove an item from one of the queues. Specifically, it removes the
139 /// oldest item from the next queue in order to provide fair access to 154 /// oldest item from the next queue in order to provide fair access to