71 #if defined(__WIN32__) && !defined(HAVE_LIBC)
92 #define SDL_PASSED_BEGINTHREAD_ENDTHREAD
95 typedef uintptr_t(__cdecl * pfnSDL_CurrentBeginThread) (
void *, unsigned,
101 typedef void (__cdecl * pfnSDL_CurrentEndThread) (
unsigned code);
108 pfnSDL_CurrentBeginThread pfnBeginThread,
109 pfnSDL_CurrentEndThread pfnEndThread);
114 #if defined(SDL_CreateThread) && SDL_DYNAMIC_API
115 #undef SDL_CreateThread
116 #define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
118 #define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex)
121 #elif defined(__OS2__)
126 #define SDL_PASSED_BEGINTHREAD_ENDTHREAD
128 typedef int (*pfnSDL_CurrentBeginThread)(
void (*
func)(
void *),
void *,
unsigned,
void * );
129 typedef void (*pfnSDL_CurrentEndThread)(
void);
132 pfnSDL_CurrentBeginThread pfnBeginThread,
133 pfnSDL_CurrentEndThread pfnEndThread);
134 #if defined(SDL_CreateThread) && SDL_DYNAMIC_API
135 #undef SDL_CreateThread
136 #define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)
138 #define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread)
SDL_TLSID SDL_TLSCreate(void)
Create an identifier that is globally visible to all threads but refers to data that is thread-specif...
SDL_threadID SDL_ThreadID(void)
const char * SDL_GetThreadName(SDL_Thread *thread)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
int(* SDL_ThreadFunction)(void *data)
void SDL_WaitThread(SDL_Thread *thread, int *status)
GLuint const GLchar * name
void * SDL_TLSGet(SDL_TLSID id)
Get the value associated with a thread local storage ID for the current thread.
SDL_threadID SDL_GetThreadID(SDL_Thread *thread)
int SDL_TLSSet(SDL_TLSID id, const void *value, void(*destructor)(void *))
Set the value associated with a thread local storage ID for the current thread.
int SDL_SetThreadPriority(SDL_ThreadPriority priority)
GLsizei const GLfloat * value
void SDL_DetachThread(SDL_Thread *thread)
SDL_Thread * SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data)
SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char const char SDL_SCANF_FORMAT_STRING const char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
unsigned long SDL_threadID