SL-18721: Faster viewer shutdown time since performance improvements can lead to perceived inventory loss due to cache corruption
parent
c23353cfc3
commit
cf692c40b0
|
|
@ -39,6 +39,11 @@ void LL::ThreadPool::start()
|
|||
run(tname);
|
||||
});
|
||||
}
|
||||
|
||||
// Special workflow for LLWindowWin32Thread - it's close() should be called explicitly
|
||||
if (mExplicitShutdown)
|
||||
return;
|
||||
|
||||
// Listen on "LLApp", and when the app is shutting down, close the queue
|
||||
// and join the workers.
|
||||
LLEventPumps::instance().obtain("LLApp").listen(
|
||||
|
|
|
|||
|
|
@ -59,6 +59,10 @@ namespace LL
|
|||
*/
|
||||
virtual void run();
|
||||
|
||||
protected:
|
||||
// LLWindowWin32Thread should set this flag to true
|
||||
bool mExplicitShutdown { false };
|
||||
|
||||
private:
|
||||
void run(const std::string& name);
|
||||
|
||||
|
|
|
|||
|
|
@ -4581,6 +4581,9 @@ std::vector<std::string> LLWindowWin32::getDynamicFallbackFontList()
|
|||
inline LLWindowWin32::LLWindowWin32Thread::LLWindowWin32Thread()
|
||||
: ThreadPool("Window Thread", 1, MAX_QUEUE_SIZE)
|
||||
{
|
||||
// Set this flag to true to avoid of implicit call of close() from start()
|
||||
mExplicitShutdown = true;
|
||||
|
||||
ThreadPool::start();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue