Kaydet (Commit) 35811889 authored tarafından Tobias Madl's avatar Tobias Madl

changed timers to idles

Change-Id: Ia9f6afb29a387c0af7d898fb69f5a3b415add7b0
üst 19b7dc3b
...@@ -37,7 +37,7 @@ ThreadManager::ThreadManager( uno::Reference< util::XJobManager >& rThreadJoiner ...@@ -37,7 +37,7 @@ ThreadManager::ThreadManager( uno::Reference< util::XJobManager >& rThreadJoiner
mnThreadIDCounter( 0 ), mnThreadIDCounter( 0 ),
maWaitingForStartThreads(), maWaitingForStartThreads(),
maStartedThreads(), maStartedThreads(),
maStartNewThreadTimer(), maStartNewThreadIdle(),
mbStartingOfThreadsSuspended( false ) mbStartingOfThreadsSuspended( false )
{ {
} }
...@@ -46,8 +46,8 @@ void ThreadManager::Init() ...@@ -46,8 +46,8 @@ void ThreadManager::Init()
{ {
mpThreadListener.reset( new ThreadListener( *this ) ); mpThreadListener.reset( new ThreadListener( *this ) );
maStartNewThreadTimer.SetTimeout( 2000 ); maStartNewThreadIdle.SetPriority( VCL_IDLE_PRIORITY_LOWEST );
maStartNewThreadTimer.SetTimeoutHdl( LINK( this, ThreadManager, TryToStartNewThread ) ); maStartNewThreadIdle.SetIdleHdl( LINK( this, ThreadManager, TryToStartNewThread ) );
} }
ThreadManager::~ThreadManager() ThreadManager::~ThreadManager()
...@@ -98,7 +98,7 @@ oslInterlockedCount ThreadManager::AddThread( ...@@ -98,7 +98,7 @@ oslInterlockedCount ThreadManager::AddThread(
// setup Timer to start thread from waiting ones // setup Timer to start thread from waiting ones
if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() ) if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() )
{ {
maStartNewThreadTimer.Start(); maStartNewThreadIdle.Start();
} }
} }
} }
...@@ -216,7 +216,7 @@ IMPL_LINK_NOARG(ThreadManager, TryToStartNewThread) ...@@ -216,7 +216,7 @@ IMPL_LINK_NOARG(ThreadManager, TryToStartNewThread)
// setup Timer to start thread from waiting ones // setup Timer to start thread from waiting ones
if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() ) if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() )
{ {
maStartNewThreadTimer.Start(); maStartNewThreadIdle.Start();
} }
} }
} }
...@@ -240,7 +240,7 @@ void ThreadManager::ResumeStartingOfThreads() ...@@ -240,7 +240,7 @@ void ThreadManager::ResumeStartingOfThreads()
// setup Timer to start thread from waiting ones // setup Timer to start thread from waiting ones
if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() ) if ( maStartedThreads.empty() && !maWaitingForStartThreads.empty() )
{ {
maStartNewThreadTimer.Start(); maStartNewThreadIdle.Start();
break; break;
} }
} }
......
...@@ -123,7 +123,7 @@ class ThreadManager : public IThreadListenerOwner ...@@ -123,7 +123,7 @@ class ThreadManager : public IThreadListenerOwner
std::deque< tThreadData > maWaitingForStartThreads; std::deque< tThreadData > maWaitingForStartThreads;
std::deque< tThreadData > maStartedThreads; std::deque< tThreadData > maStartedThreads;
Timer maStartNewThreadTimer; Idle maStartNewThreadIdle;
bool mbStartingOfThreadsSuspended; bool mbStartingOfThreadsSuspended;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment