9#include <sys/syscall.h>
13#if ANDROID_HAS_RTSIGNALS
15#define THREAD_CALLSTACK_GENERATOR SIGRTMIN + 5
16#define FATAL_SIGNAL_FWD SIGRTMIN + 6
17#define THREADBACKTRACE_SIGNAL_FWD SIGRTMIN + 7
32template<
typename Derived>
50 const size_t StackSize = 256 * 1024;
59 FPlatformProcess::SleepNoStats(0);
78 FPlatformProcess::SleepNoStats(0);
91 while (FPlatformAtomics::InterlockedCompareExchange(&
SignalThreadStatus, (
int32)ESignalThreadStatus::Starting, (
int32)ESignalThreadStatus::Ready) != (
int32)ESignalThreadStatus::Ready)
93 FPlatformProcess::SleepNoStats(0.0f);
118 FPlatformProcess::SleepInfinite();
148 while (FPlatformAtomics::InterlockedCompareExchange(&
SignalThreadStatus, (
int32)ESignalThreadStatus::Ready, (
int32)ESignalThreadStatus::Complete) != (
int32)ESignalThreadStatus::Complete)
164 if (
Info->si_value.sival_int == (
int)ESignalType::Exit)
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Init()
Definition LockFreeList.h:4
#define UE_CLOG(Condition, CategoryName, Verbosity, Format,...)
Definition LogMacros.h:298
static UE_FORCEINLINE_HINT void MemoryBarrier()
Definition AndroidPlatformMisc.h:249
static uint32 GetCurrentThreadId(void)
Definition AndroidPlatformTLS.h:20
static UE_FORCEINLINE_HINT void * Memzero(void *Dest, SIZE_T Count)
Definition UnrealMemory.h:131