Added SDL_GetThreadState

This commit is contained in:
Moritz
2024-12-25 18:46:59 +01:00
committed by Sam Lantinga
parent b7dac5072b
commit ca4f5dd40d
6 changed files with 39 additions and 8 deletions

View File

@@ -102,6 +102,25 @@ typedef enum SDL_ThreadPriority {
SDL_THREAD_PRIORITY_TIME_CRITICAL
} SDL_ThreadPriority;
/**
* The SDL thread state.
*
* SDL stores the current state of a thread in an atomic int.
* The current state of a thread can be checked by calling
* SDL_GetThreadState.
*
* \since This enum is available since SDL 3.1.3.
*
* \sa SDL_GetThreadState
*/
typedef enum SDL_ThreadState
{
SDL_THREAD_STATE_ALIVE,
SDL_THREAD_STATE_DETACHED,
SDL_THREAD_STATE_ZOMBIE,
SDL_THREAD_STATE_CLEANED,
} SDL_ThreadState;
/**
* The function passed to SDL_CreateThread() as the new thread's entry point.
*
@@ -422,6 +441,18 @@ extern SDL_DECLSPEC bool SDLCALL SDL_SetCurrentThreadPriority(SDL_ThreadPriority
*/
extern SDL_DECLSPEC void SDLCALL SDL_WaitThread(SDL_Thread *thread, int *status);
/**
* Get the current state of a thread.
*
* \param thread the thread whose status you want to check.
* \returns the current state of a thread as defined in the SDL_ThreadState enum.
*
* \since This function is available since SDL 3.1.3.
*
* \sa SDL_ThreadState
*/
extern SDL_DECLSPEC SDL_ThreadState SDLCALL SDL_GetThreadState(SDL_Thread *thread);
/**
* Let a thread clean up on exit without intervention.
*