- #endif
- // Go to sleep
- SHORTLOCK(&glThreadListLock);
- us = Threads_RemActive();
- us->WaitPointer = Queue;
- us->Status = THREAD_STAT_QUEUESLEEP;
- Queue->Sleeper = us;
-
- SHORTREL(&Queue->Protector);
- SHORTREL(&glThreadListLock);
-
- // Yield and sleep
- Threads_int_WaitForStatusEnd(THREAD_STAT_QUEUESLEEP);
-
- us->WaitPointer = NULL;