diff --git a/Source/Threading/AuWakeOnAddress.cpp b/Source/Threading/AuWakeOnAddress.cpp index 59e2ff26..34885138 100644 --- a/Source/Threading/AuWakeOnAddress.cpp +++ b/Source/Threading/AuWakeOnAddress.cpp @@ -363,8 +363,17 @@ namespace Aurora::Threading } #if defined(AURORA_IS_MODERNNT_DERIVED) - return pWaitOnAddress && + static AuOptionalEx gIsWaitOnRecommendedCache {}; + + if (gIsWaitOnRecommendedCache) + { + return gIsWaitOnRecommendedCache.value(); + } + + bool bState = pWaitOnAddress && AuSwInfo::IsWindows8Point1OrGreater(); + gIsWaitOnRecommendedCache = bState; + return bState; #elif defined(AURORA_PLATFORM_LINUX) return true; #endif