Fixed unit tests due to changes in the threadpool
parent
e131e73652
commit
4289b71141
|
@ -2081,16 +2081,20 @@ namespace OpenSim.Framework
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
long numRunning = numRunningThreadFuncs;
|
long numRunning = numRunningThreadFuncs;
|
||||||
|
|
||||||
|
if (m_ThreadPool != null)
|
||||||
|
{
|
||||||
if ((threadFuncOverloadMode == 0) && (numRunning >= m_ThreadPool.MaxThreads))
|
if ((threadFuncOverloadMode == 0) && (numRunning >= m_ThreadPool.MaxThreads))
|
||||||
{
|
{
|
||||||
if (Interlocked.CompareExchange(ref threadFuncOverloadMode, 1, 0) == 0)
|
if (Interlocked.CompareExchange(ref threadFuncOverloadMode, 1, 0) == 0)
|
||||||
m_log.DebugFormat("Threadfunc: enable overload mode (Queued {0}, Running {1})", numQueued, numRunning);
|
m_log.DebugFormat("Threadfunc: enable overload mode (Queued {0}, Running {1})", numQueued, numRunning);
|
||||||
}
|
}
|
||||||
else if ((threadFuncOverloadMode == 1) && (numRunning <= (m_ThreadPool.MaxThreads*2)/3))
|
else if ((threadFuncOverloadMode == 1) && (numRunning <= (m_ThreadPool.MaxThreads * 2) / 3))
|
||||||
{
|
{
|
||||||
if (Interlocked.CompareExchange(ref threadFuncOverloadMode, 0, 1) == 1)
|
if (Interlocked.CompareExchange(ref threadFuncOverloadMode, 0, 1) == 1)
|
||||||
m_log.DebugFormat("Threadfunc: disable overload mode (Queued {0}, Running {1})", numQueued, numRunning);
|
m_log.DebugFormat("Threadfunc: disable overload mode (Queued {0}, Running {1})", numQueued, numRunning);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (loggingEnabled || (threadFuncOverloadMode == 1))
|
if (loggingEnabled || (threadFuncOverloadMode == 1))
|
||||||
{
|
{
|
||||||
|
@ -2325,6 +2329,13 @@ namespace OpenSim.Framework
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void RunThreadNoTimeout(WaitCallback callback, string name, object obj)
|
public static void RunThreadNoTimeout(WaitCallback callback, string name, object obj)
|
||||||
{
|
{
|
||||||
|
if (FireAndForgetMethod == FireAndForgetMethod.RegressionTest)
|
||||||
|
{
|
||||||
|
Culture.SetCurrentCulture();
|
||||||
|
callback(obj);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
Thread t = new Thread(delegate()
|
Thread t = new Thread(delegate()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
Loading…
Reference in New Issue