diff --git a/Source/Threading/Primitives/SMTYield.cpp b/Source/Threading/Primitives/SMTYield.cpp index 313acd61..c509c0d4 100644 --- a/Source/Threading/Primitives/SMTYield.cpp +++ b/Source/Threading/Primitives/SMTYield.cpp @@ -29,11 +29,18 @@ namespace Aurora::Threading AUKN_SYM AuUInt32 GetTotalSpinCountTimeout() { AuUInt32 uCount {}; - uCount = 1u << AuUInt32(gRuntimeConfig.threadingConfig.uSpinLoopPowerA); + + if (!gRuntimeConfig.threadingConfig.bPlatformIsSMPProcessorOptimized) + { + return 16; + } + + uCount = 1u << AuUInt32(gRuntimeConfig.threadingConfig.uSpinLoopPowerA); if (gHasThreadLocalTimeout) { uCount += 1u << AuUInt32(tlsSpinCountLocal); } + return uCount; }