diff options
author | UbitUmarov | 2019-11-22 07:01:17 +0000 |
---|---|---|
committer | UbitUmarov | 2019-11-22 07:01:17 +0000 |
commit | 943d0935a624710b2d38bd4be906aaada2c2d1fe (patch) | |
tree | 1857b4d4bac5b6f936347baa569bf0b8e176d649 /OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs | |
parent | Oooopss (diff) | |
download | opensim-SC-943d0935a624710b2d38bd4be906aaada2c2d1fe.zip opensim-SC-943d0935a624710b2d38bd4be906aaada2c2d1fe.tar.gz opensim-SC-943d0935a624710b2d38bd4be906aaada2c2d1fe.tar.bz2 opensim-SC-943d0935a624710b2d38bd4be906aaada2c2d1fe.tar.xz |
YEngine, change default number of exec threads to 2 of priority Normal. Let the threads priority a option on ini files
Diffstat (limited to 'OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs b/OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs index d2b4ebd..5dcaa8f 100644 --- a/OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs +++ b/OpenSim/Region/ScriptEngine/YEngine/XMREngine.cs | |||
@@ -207,8 +207,8 @@ namespace OpenSim.Region.ScriptEngine.Yengine | |||
207 | if(!m_Enabled) | 207 | if(!m_Enabled) |
208 | return; | 208 | return; |
209 | 209 | ||
210 | numThreadScriptWorkers = m_Config.GetInt("NumThreadScriptWorkers", 1); | 210 | numThreadScriptWorkers = m_Config.GetInt("NumThreadScriptWorkers", 2); |
211 | 211 | string priority = m_Config.GetString("Priority", "Normal"); | |
212 | m_TraceCalls = m_Config.GetBoolean("TraceCalls", false); | 212 | m_TraceCalls = m_Config.GetBoolean("TraceCalls", false); |
213 | m_Verbose = m_Config.GetBoolean("Verbose", false); | 213 | m_Verbose = m_Config.GetBoolean("Verbose", false); |
214 | m_ScriptDebug = m_Config.GetBoolean("ScriptDebug", false); | 214 | m_ScriptDebug = m_Config.GetBoolean("ScriptDebug", false); |
@@ -250,9 +250,31 @@ namespace OpenSim.Region.ScriptEngine.Yengine | |||
250 | return; | 250 | return; |
251 | } | 251 | } |
252 | 252 | ||
253 | ThreadPriority workersPrio = ThreadPriority.Normal; | ||
254 | switch (priority) | ||
255 | { | ||
256 | case "Lowest": | ||
257 | workersPrio = ThreadPriority.Lowest; | ||
258 | break; | ||
259 | case "BelowNormal": | ||
260 | workersPrio = ThreadPriority.BelowNormal; | ||
261 | break; | ||
262 | case "Normal": | ||
263 | workersPrio = ThreadPriority.Normal; | ||
264 | break; | ||
265 | case "AboveNormal": | ||
266 | workersPrio = ThreadPriority.AboveNormal; | ||
267 | break; | ||
268 | case "Highest": | ||
269 | workersPrio = ThreadPriority.Highest; | ||
270 | break; | ||
271 | default: | ||
272 | m_log.ErrorFormat("[YEngine] Invalid thread priority: '{0}'. Assuming Normal", priority); | ||
273 | break; | ||
274 | } | ||
253 | m_SleepThread = StartMyThread(RunSleepThread, "Yengine sleep", ThreadPriority.Normal); | 275 | m_SleepThread = StartMyThread(RunSleepThread, "Yengine sleep", ThreadPriority.Normal); |
254 | for(int i = 0; i < numThreadScriptWorkers; i++) | 276 | for(int i = 0; i < numThreadScriptWorkers; i++) |
255 | StartThreadWorker(i); | 277 | StartThreadWorker(i, workersPrio); |
256 | 278 | ||
257 | m_log.InfoFormat("[YEngine]: Enabled, {0}.{1} Meg (0x{2}) stacks", | 279 | m_log.InfoFormat("[YEngine]: Enabled, {0}.{1} Meg (0x{2}) stacks", |
258 | (m_StackSize >> 20).ToString(), | 280 | (m_StackSize >> 20).ToString(), |