opensim

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 4  →  ?path2? @ 3
/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
@@ -51,7 +51,7 @@
 
private static Thread cmdHandlerThread;
private static int cmdHandlerThreadCycleSleepms;
private static readonly System.Timers.Timer cmdEventTimer = new System.Timers.Timer();
private static readonly AutoResetEvent cmdHandlerResetEvent = new AutoResetEvent(false);
 
/// <summary>
/// Lock for reading/writing static components of AsyncCommandManager.
@@ -179,21 +179,13 @@
 
private static void StartThread()
{
if (!cmdEventTimer.Enabled.Equals(false)) return;
// Start the timer event
cmdEventTimer.Elapsed += (sender, args) =>
if (cmdHandlerThread == null)
{
try
{
DoOneCmdHandlerPass();
}
catch (Exception e)
{
m_log.Error("[ASYNC COMMAND MANAGER]: Exception in command handler pass: ", e);
}
};
cmdEventTimer.Interval = cmdHandlerThreadCycleSleepms;
cmdEventTimer.Enabled = true;
// Start the thread that will be doing the work
cmdHandlerThread
= Watchdog.StartThread(
CmdHandlerThreadLoop, "AsyncLSLCmdHandlerThread", ThreadPriority.Normal, true, true);
}
}
 
private void ReadConfig()
@@ -200,7 +192,7 @@
{
// cmdHandlerThreadCycleSleepms = m_ScriptEngine.Config.GetInt("AsyncLLCommandLoopms", 100);
// TODO: Make this sane again
cmdHandlerThreadCycleSleepms = 10;
cmdHandlerThreadCycleSleepms = 100;
}
 
~AsyncCommandManager()
@@ -231,10 +223,10 @@
{
try
{
Thread.Sleep(cmdHandlerThreadCycleSleepms);
//Thread.Sleep(cmdHandlerThreadCycleSleepms);
 
DoOneCmdHandlerPass();
 
cmdHandlerResetEvent.WaitOne(cmdHandlerThreadCycleSleepms, false);
Watchdog.UpdateThread();
}
catch (Exception e)
@@ -269,6 +261,7 @@
m_Dataserver[s].ExpireRequests();
}
}
cmdHandlerResetEvent.Set();
}
 
/// <summary>
@@ -448,4 +441,4 @@
}
}
}
}
}