clockwerk-opensim-stable

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 1  →  ?path2? @ 2
/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
@@ -49,8 +49,8 @@
{
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
 
private static Thread cmdHandlerThread;
private static int cmdHandlerThreadCycleSleepms;
private static readonly System.Timers.Timer cmdEventTimer = new System.Timers.Timer();
 
/// <summary>
/// Lock for reading/writing static components of AsyncCommandManager.
@@ -172,18 +172,24 @@
if (!m_XmlRequest.ContainsKey(m_ScriptEngine))
m_XmlRequest[m_ScriptEngine] = new XmlRequest(this);
 
StartThread();
}
}
if (cmdEventTimer.Enabled.Equals(true)) return;
 
private static void StartThread()
{
if (cmdHandlerThread == null)
{
// Start the thread that will be doing the work
cmdHandlerThread
= Watchdog.StartThread(
CmdHandlerThreadLoop, "AsyncLSLCmdHandlerThread", ThreadPriority.Normal, true, true);
// Start the timer
cmdEventTimer.Elapsed += (sender, args) =>
{
try
{
DoOneCmdHandlerPass();
}
catch (Exception e)
{
m_log.Error("[ASYNC COMMAND MANAGER]: Exception in command handler pass: ", e);
}
};
 
cmdEventTimer.Interval = cmdHandlerThreadCycleSleepms;
cmdEventTimer.Enabled = true;
 
}
}
 
@@ -191,7 +197,7 @@
{
// cmdHandlerThreadCycleSleepms = m_ScriptEngine.Config.GetInt("AsyncLLCommandLoopms", 100);
// TODO: Make this sane again
cmdHandlerThreadCycleSleepms = 100;
cmdHandlerThreadCycleSleepms = 50;
}
 
~AsyncCommandManager()
@@ -439,4 +445,4 @@
}
}
}
}
}
/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -105,7 +105,7 @@
protected AsyncCommandManager AsyncCommands = null;
protected float m_ScriptDelayFactor = 1.0f;
protected float m_ScriptDistanceFactor = 1.0f;
protected float m_MinTimerInterval = 0.5f;
protected float m_MinTimerInterval = 0.05f;
protected float m_recoilScaleFactor = 0.0f;
 
protected DateTime m_timer = DateTime.Now;
/bin/OpenSimDefaults.ini
@@ -1471,7 +1471,7 @@
 
; Minimum settable timer interval. Any timer setting less than this is
; rounded up to this minimum interval.
; MinTimerInterval = 0.5
; MinTimerInterval = 0.05
 
; Sensor settings
SensorMaxRange = 96.0