Added a spinlock template as well as a thread work pool class.

Also, optimized shader compilation to happen on threads.
This commit is contained in:
Juan Linietsky
2019-07-29 12:59:18 -03:00
parent 4fe3ee1730
commit c613ead5fa
37 changed files with 458 additions and 192 deletions

View File

@@ -297,7 +297,7 @@ class CommandQueueMT {
struct SyncSemaphore {
Semaphore *sem;
SemaphoreOld *sem;
bool in_use;
};
@@ -342,7 +342,7 @@ class CommandQueueMT {
uint32_t dealloc_ptr;
SyncSemaphore sync_sems[SYNC_SEMAPHORES];
Mutex *mutex;
Semaphore *sync;
SemaphoreOld *sync;
template <class T>
T *allocate() {