diff --git a/uppsrc/Core/Mt.cpp b/uppsrc/Core/Mt.cpp index 156bac611..d9b00d25c 100644 --- a/uppsrc/Core/Mt.cpp +++ b/uppsrc/Core/Mt.cpp @@ -170,19 +170,19 @@ int Thread::GetCount() return ReadWithBarrier(sThreadCount); } -static Atomic sShutdown; +static volatile Atomic sShutdown = 0; void Thread::ShutdownThreads() { AtomicInc(sShutdown); - while(sThreadCount) + while(AtomicRead(sThreadCount)) Sleep(100); AtomicDec(sShutdown); } bool Thread::IsShutdownThreads() { - return sShutdown; + return AtomicRead(sShutdown); } int Thread::Wait()