diff options
Diffstat (limited to 'indra/llcommon')
| -rw-r--r-- | indra/llcommon/llqueuedthread.cpp | 7 | ||||
| -rw-r--r-- | indra/llcommon/llqueuedthread.h | 2 | ||||
| -rw-r--r-- | indra/llcommon/llworkerthread.cpp | 4 | ||||
| -rw-r--r-- | indra/llcommon/llworkerthread.h | 2 | 
4 files changed, 10 insertions, 5 deletions
| diff --git a/indra/llcommon/llqueuedthread.cpp b/indra/llcommon/llqueuedthread.cpp index efd9c4b68f..5dee7a3541 100644 --- a/indra/llcommon/llqueuedthread.cpp +++ b/indra/llcommon/llqueuedthread.cpp @@ -32,7 +32,7 @@  //============================================================================  // MAIN THREAD -LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded) : +LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded, bool should_pause) :  	LLThread(name),  	mThreaded(threaded),  	mIdleThread(TRUE), @@ -41,6 +41,11 @@ LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded) :  {  	if (mThreaded)  	{ +		if(should_pause) +		{ +			pause() ; //call this before start the thread. +		} +  		start();  	}  } diff --git a/indra/llcommon/llqueuedthread.h b/indra/llcommon/llqueuedthread.h index a53b22f6fc..499d13a792 100644 --- a/indra/llcommon/llqueuedthread.h +++ b/indra/llcommon/llqueuedthread.h @@ -149,7 +149,7 @@ public:  	static handle_t nullHandle() { return handle_t(0); }  public: -	LLQueuedThread(const std::string& name, bool threaded = true); +	LLQueuedThread(const std::string& name, bool threaded = true, bool should_pause = false);  	virtual ~LLQueuedThread();	  	virtual void shutdown(); diff --git a/indra/llcommon/llworkerthread.cpp b/indra/llcommon/llworkerthread.cpp index 6b308bb917..e186621503 100644 --- a/indra/llcommon/llworkerthread.cpp +++ b/indra/llcommon/llworkerthread.cpp @@ -34,8 +34,8 @@  //============================================================================  // Run on MAIN thread -LLWorkerThread::LLWorkerThread(const std::string& name, bool threaded) : -	LLQueuedThread(name, threaded) +LLWorkerThread::LLWorkerThread(const std::string& name, bool threaded, bool should_pause) : +	LLQueuedThread(name, threaded, should_pause)  {  	mDeleteMutex = new LLMutex;  } diff --git a/indra/llcommon/llworkerthread.h b/indra/llcommon/llworkerthread.h index bef5ef53fe..973b78ca01 100644 --- a/indra/llcommon/llworkerthread.h +++ b/indra/llcommon/llworkerthread.h @@ -83,7 +83,7 @@ private:  	LLMutex* mDeleteMutex;  public: -	LLWorkerThread(const std::string& name, bool threaded = true); +	LLWorkerThread(const std::string& name, bool threaded = true, bool should_pause = false);  	~LLWorkerThread();  	/*virtual*/ S32 update(U32 max_time_ms); | 
