SDL_SetTLS(3)

NAME
SDL_SetTLS - Set the current thread's value associated with a thread local storage ID.

SYNOPSIS
#include <SDL3/SDL_thread.h>

bool SDL_SetTLS(SDL_TLSID *id, const void *value, SDL_TLSDestructorCallback destructor);

DESCRIPTION
If the thread local storage ID is not initialized (the value is 0), a new ID will be created in a thread-safe way, so all calls using a pointer to the same ID will refer to the same local storage.

Note that replacing a value from a previous call to this function on the same thread does _not_ call the previous value's destructor!

destructor can be NULL; it is assumed that value does not need to be cleaned up if so.

FUNCTION PARAMETERS

id  a pointer to the thread local storage ID, may not be NULL.

value
    the value to associate with the ID for the current thread.

destructor
    a function called when the thread exits, to free the value, may be NULL.

RETURN VALUE
for more information.

THREAD SAFETY
It is safe to call this function from any thread.

AVAILABILITY
This function is available since SDL 3.2.0.

SEE ALSO
SDL_GetTLS(3)