aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventQueueManager.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/MaintenanceThread.cs18
2 files changed, 17 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventQueueManager.cs b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventQueueManager.cs
index 85b55f7..825686b 100644
--- a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventQueueManager.cs
+++ b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventQueueManager.cs
@@ -173,6 +173,7 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
173 m_ScriptEngine = _ScriptEngine; 173 m_ScriptEngine = _ScriptEngine;
174 174
175 ReadConfig(); 175 ReadConfig();
176 AdjustNumberOfScriptThreads();
176 } 177 }
177 178
178 public void ReadConfig() 179 public void ReadConfig()
diff --git a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/MaintenanceThread.cs b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/MaintenanceThread.cs
index 47fe815..e0ec27f 100644
--- a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/MaintenanceThread.cs
+++ b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/MaintenanceThread.cs
@@ -131,6 +131,8 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
131 long Last_ReReadConfigFilens = DateTime.Now.Ticks; 131 long Last_ReReadConfigFilens = DateTime.Now.Ticks;
132 int MaintenanceLoopTicks_ScriptLoadUnload_Count = 0; 132 int MaintenanceLoopTicks_ScriptLoadUnload_Count = 0;
133 int MaintenanceLoopTicks_Other_Count = 0; 133 int MaintenanceLoopTicks_Other_Count = 0;
134 bool MaintenanceLoopTicks_ScriptLoadUnload_ResetCount = false;
135 bool MaintenanceLoopTicks_Other_ResetCount = false;
134 136
135 while (true) 137 while (true)
136 { 138 {
@@ -140,6 +142,18 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
140 { 142 {
141 System.Threading.Thread.Sleep(MaintenanceLoopms); // Sleep before next pass 143 System.Threading.Thread.Sleep(MaintenanceLoopms); // Sleep before next pass
142 144
145 // Reset counters?
146 if (MaintenanceLoopTicks_ScriptLoadUnload_ResetCount)
147 {
148 MaintenanceLoopTicks_ScriptLoadUnload_ResetCount = false;
149 MaintenanceLoopTicks_ScriptLoadUnload_Count = 0;
150 }
151 if (MaintenanceLoopTicks_Other_ResetCount)
152 {
153 MaintenanceLoopTicks_Other_ResetCount = false;
154 MaintenanceLoopTicks_Other_Count = 0;
155 }
156
143 // Increase our counters 157 // Increase our counters
144 MaintenanceLoopTicks_ScriptLoadUnload_Count++; 158 MaintenanceLoopTicks_ScriptLoadUnload_Count++;
145 MaintenanceLoopTicks_Other_Count++; 159 MaintenanceLoopTicks_Other_Count++;
@@ -151,7 +165,7 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
151 // Re-reading config every x seconds 165 // Re-reading config every x seconds
152 if (MaintenanceLoopTicks_Other_Count >= MaintenanceLoopTicks_Other) 166 if (MaintenanceLoopTicks_Other_Count >= MaintenanceLoopTicks_Other)
153 { 167 {
154 MaintenanceLoopTicks_Other_Count = 0; 168 MaintenanceLoopTicks_Other_ResetCount = true;
155 if (m_ScriptEngine.RefreshConfigFilens > 0) 169 if (m_ScriptEngine.RefreshConfigFilens > 0)
156 { 170 {
157 171
@@ -187,7 +201,7 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
187 } 201 }
188 if (MaintenanceLoopTicks_ScriptLoadUnload_Count >= MaintenanceLoopTicks_ScriptLoadUnload) 202 if (MaintenanceLoopTicks_ScriptLoadUnload_Count >= MaintenanceLoopTicks_ScriptLoadUnload)
189 { 203 {
190 MaintenanceLoopTicks_ScriptLoadUnload_Count = 0; 204 MaintenanceLoopTicks_ScriptLoadUnload_ResetCount = true;
191 // LOAD / UNLOAD SCRIPTS 205 // LOAD / UNLOAD SCRIPTS
192 if (m_ScriptEngine.m_ScriptManager != null) 206 if (m_ScriptEngine.m_ScriptManager != null)
193 m_ScriptEngine.m_ScriptManager.DoScriptLoadUnload(); 207 m_ScriptEngine.m_ScriptManager.DoScriptLoadUnload();