Go to the documentation of this file.
36 #if defined(AK_MONITORX_SUPPORTED)
38 #if (defined __clang__ || defined __GNUC__)
39 #include <x86intrin.h>
40 #elif defined(_MSC_VER)
44 #endif // defined(AK_MONITORX_SUPPORTED)
46 #if !defined(AK_NULL_PLATFORM)
50 #if defined(AK_MONITORX_SUPPORTED)
65 _mm_monitorx((
void*)in_pVal, 0U, 0U);
72 _mm_mwaitx(2U, 0U, 1000U);
76 if (currentTime > endSpinTime)
101 _mm_monitorx((
void*)in_pVal, 0U, 0U);
108 _mm_mwaitx(2U, 0U, 1000U);
112 if (currentTime > endSpinTime)
137 if (currentTime > endSpinTime)
169 if (currentTime > endSpinTime)
175 #endif // !defined(AK_MONITORX_SUPPORTED)
Platform-dependent helpers.
volatile int32_t AkAtomic32
int32_t AkInt32
Signed 32-bit integer.
void PerformanceCounter(AkInt64 *out_piLastTime)
Platform Independent Helper.
void AkLimitedSpinForZero(AkAtomic32 *in_pVal)
bool AkLimitedSpinToAcquire(AkAtomic32 *in_pVal, AkInt32 in_proposed, AkInt32 in_expected)
int64_t AkInt64
Signed 64-bit integer.
void AkSpinToAcquire(AkAtomic32 *in_pVal, AkInt32 in_proposed, AkInt32 in_expected)
void AkSpinWaitForZero(AkAtomic32 *in_pVal)
Tell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise