Пример #1
0
/*
 * RunThreads
 */
static void RunThreads(void){
	thread_t *t[64];
	int i;

	if(!threads->integer){
		ThreadWork(0);
		return;
	}

	lock = SDL_CreateMutex();

	for(i = 0; i < threads->integer; i++)
		t[i] = Thread_Create(ThreadWork, NULL);

	for(i = 0; i < threads->integer; i++)
		Thread_Wait(&t[i]);

	SDL_DestroyMutex(lock);
	lock = NULL;
}
Пример #2
0
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();
}