aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/PriorityQueue.cs
diff options
context:
space:
mode:
authorUbitUmarov2012-03-21 21:19:29 +0000
committerUbitUmarov2012-03-21 21:19:29 +0000
commit68981d01f024f8a46949127e1cc23c81282f5220 (patch)
treed128e115a4e69c8b26473dab69494bd54468ec14 /OpenSim/Framework/PriorityQueue.cs
parentminor clean (diff)
downloadopensim-SC-68981d01f024f8a46949127e1cc23c81282f5220.zip
opensim-SC-68981d01f024f8a46949127e1cc23c81282f5220.tar.gz
opensim-SC-68981d01f024f8a46949127e1cc23c81282f5220.tar.bz2
opensim-SC-68981d01f024f8a46949127e1cc23c81282f5220.tar.xz
Stop messing order of updates, destroing the defined order of the selected priority (by distance being the one that makes sense(?). So called fairness serves no usefull purpose. If a region is lagged or user has bad comms, and far objects updates don't arrive, at least nearby thinks do have a chance to keep ticking. Just test on a big region and observe rez order on arrival. lower viewer bandwith helps seeing the diference. No use to put in core since cmic loves the priority scrambling code i comented out.
Diffstat (limited to 'OpenSim/Framework/PriorityQueue.cs')
-rw-r--r--OpenSim/Framework/PriorityQueue.cs11
1 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Framework/PriorityQueue.cs b/OpenSim/Framework/PriorityQueue.cs
index e7a7f7f..fe2a351 100644
--- a/OpenSim/Framework/PriorityQueue.cs
+++ b/OpenSim/Framework/PriorityQueue.cs
@@ -139,7 +139,12 @@ namespace OpenSim.Framework
139 { 139 {
140 // If there is anything in priority queue 0, return it first no 140 // If there is anything in priority queue 0, return it first no
141 // matter what else. Breaks fairness. But very useful. 141 // matter what else. Breaks fairness. But very useful.
142 for (int iq = 0; iq < NumberOfImmediateQueues; iq++) 142// for (int iq = 0; iq < NumberOfImmediateQueues; iq++)
143
144
145 // keep original order
146
147 for (int iq = 0; iq < NumberOfQueues; iq++)
143 { 148 {
144 if (m_heaps[iq].Count > 0) 149 if (m_heaps[iq].Count > 0)
145 { 150 {
@@ -151,7 +156,7 @@ namespace OpenSim.Framework
151 return true; 156 return true;
152 } 157 }
153 } 158 }
154 159/*
155 // To get the fair queing, we cycle through each of the 160 // To get the fair queing, we cycle through each of the
156 // queues when finding an element to dequeue. 161 // queues when finding an element to dequeue.
157 // We pull (NumberOfQueues - QueueIndex) items from each queue in order 162 // We pull (NumberOfQueues - QueueIndex) items from each queue in order
@@ -193,7 +198,7 @@ namespace OpenSim.Framework
193 return true; 198 return true;
194 } 199 }
195 } 200 }
196 201*/
197 timeinqueue = 0; 202 timeinqueue = 0;
198 value = default(IEntityUpdate); 203 value = default(IEntityUpdate);
199 return false; 204 return false;