static void RunThreads (void) { SDL_Thread *threads[MAX_THREADS]; int i; if (threadstate.numthreads == 1) { ThreadWork(NULL); return; } ThreadInit(); for (i = 0; i < threadstate.numthreads; i++) threads[i] = SDL_CreateThread(ThreadWork, NULL); for (i = 0; i < threadstate.numthreads; i++) SDL_WaitThread(threads[i], NULL); ThreadRelease(); }
void ThreadWaitAndRelease(TThread * const threadP) { WaitForSingleObject(threadP->handle, INFINITE); ThreadRelease(threadP); }