Cube  Diff

Differences From Artifact [b2e734a52a]:

To Artifact [442e527d8e]:


56
57
58
59
60
61
62

63
64
65
66


67
68
69
70
71
72
73
74
75
76

77
78
79

80
81
82
83
84
85
86
	resolversem = SDL_CreateSemaphore(0);
	resolvermutex = SDL_CreateMutex();

	while (threads > 0) {
		resolverthread &rt = resolverthreads.add();
		rt.query = NULL;
		rt.starttime = 0;

		rt.thread = SDL_CreateThread(resolverloop, &rt);
		--threads;
	};
};



void
resolverstop(resolverthread &rt, bool restart)
{
	SDL_LockMutex(resolvermutex);
	SDL_KillThread(rt.thread);
	rt.query = NULL;
	rt.starttime = 0;
	rt.thread = NULL;
	if (restart)

		rt.thread = SDL_CreateThread(resolverloop, &rt);
	SDL_UnlockMutex(resolvermutex);
};


void
resolverclear()
{
	SDL_LockMutex(resolvermutex);
	resolverqueries.setsize(0);
	resolverresults.setsize(0);







>
|

<
<
>
>





|




>
|

<
>







56
57
58
59
60
61
62
63
64
65


66
67
68
69
70
71
72
73
74
75
76
77
78
79
80

81
82
83
84
85
86
87
88
	resolversem = SDL_CreateSemaphore(0);
	resolvermutex = SDL_CreateMutex();

	while (threads > 0) {
		resolverthread &rt = resolverthreads.add();
		rt.query = NULL;
		rt.starttime = 0;
		rt.thread =
		    SDL_CreateThread(resolverloop, "resolverthread", &rt);
		--threads;


	}
}

void
resolverstop(resolverthread &rt, bool restart)
{
	SDL_LockMutex(resolvermutex);
	// SDL_KillThread(rt.thread);
	rt.query = NULL;
	rt.starttime = 0;
	rt.thread = NULL;
	if (restart)
		rt.thread =
		    SDL_CreateThread(resolverloop, "resolverthread", &rt);
	SDL_UnlockMutex(resolvermutex);

}

void
resolverclear()
{
	SDL_LockMutex(resolvermutex);
	resolverqueries.setsize(0);
	resolverresults.setsize(0);