WaitSynchronizationN: Implement return values

This commit is contained in:
bunnei 2015-01-17 02:03:44 -05:00
parent e4a5d8ad4f
commit 7faf2d8e06
10 changed files with 193 additions and 87 deletions

View file

@ -66,9 +66,10 @@ public:
/**
* Wait for kernel object to synchronize.
* @param index Index of wait object (only applies to WaitSynchronizationN)
* @return True if the current thread should wait as a result of the wait
*/
virtual ResultVal<bool> WaitSynchronization() {
virtual ResultVal<bool> WaitSynchronization(unsigned index=0) {
LOG_ERROR(Kernel, "(UNIMPLEMENTED)");
return UnimplementedFunction(ErrorModule::Kernel);
}
@ -111,10 +112,10 @@ public:
void RemoveWaitingThread(Thread* thead);
/**
* Resumes (and removes) the next thread waiting on this object
* Releases (and removes) the next thread waiting on this object
* @return Pointer to the thread that was resumed, nullptr if no threads are waiting
*/
Thread* ResumeNextThread();
Thread* ReleaseNextThread();
/// Releases all threads waiting on this object
void ReleaseAllWaitingThreads();