Kernel: Made SyncRequest not pure virtual, with a default implementation of error (as this is not required for all kernel objects)

This commit is contained in:
bunnei 2014-06-05 23:13:28 -04:00
parent 1c867b569d
commit 6fd870e6bb
3 changed files with 4 additions and 23 deletions

View file

@ -29,17 +29,6 @@ public:
std::vector<Handle> waiting_threads; ///< Threads that are waiting for the event std::vector<Handle> waiting_threads; ///< Threads that are waiting for the event
std::string name; ///< Name of event (optional) std::string name; ///< Name of event (optional)
/**
* Synchronize kernel object
* @param wait Boolean wait set if current thread should wait as a result of sync operation
* @return Result of operation, 0 on success, otherwise error code
*/
Result SyncRequest(bool* wait) {
// TODO(bunnei): ImplementMe
ERROR_LOG(KERNEL, "(UMIMPLEMENTED) call");
return 0;
}
/** /**
* Wait for kernel object to synchronize * Wait for kernel object to synchronize
* @param wait Boolean wait set if current thread should wait as a result of sync operation * @param wait Boolean wait set if current thread should wait as a result of sync operation

View file

@ -53,7 +53,10 @@ public:
* @param wait Boolean wait set if current thread should wait as a result of sync operation * @param wait Boolean wait set if current thread should wait as a result of sync operation
* @return Result of operation, 0 on success, otherwise error code * @return Result of operation, 0 on success, otherwise error code
*/ */
virtual Result SyncRequest(bool* wait) = 0; virtual Result SyncRequest(bool* wait) {
ERROR_LOG(KERNEL, "(UNIMPLEMENTED)");
return -1;
}
/** /**
* Wait for kernel object to synchronize * Wait for kernel object to synchronize
@ -61,7 +64,6 @@ public:
* @return Result of operation, 0 on success, otherwise error code * @return Result of operation, 0 on success, otherwise error code
*/ */
virtual Result WaitSynchronization(bool* wait) = 0; virtual Result WaitSynchronization(bool* wait) = 0;
}; };
class ObjectPool : NonCopyable { class ObjectPool : NonCopyable {

View file

@ -36,16 +36,6 @@ public:
inline bool IsWaiting() const { return (status & THREADSTATUS_WAIT) != 0; } inline bool IsWaiting() const { return (status & THREADSTATUS_WAIT) != 0; }
inline bool IsSuspended() const { return (status & THREADSTATUS_SUSPEND) != 0; } inline bool IsSuspended() const { return (status & THREADSTATUS_SUSPEND) != 0; }
/**
* Synchronize kernel object
* @param wait Boolean wait set if current thread should wait as a result of sync operation
* @return Result of operation, 0 on success, otherwise error code
*/
Result SyncRequest(bool* wait) {
// TODO(bunnei): ImplementMe
return 0;
}
/** /**
* Wait for kernel object to synchronize * Wait for kernel object to synchronize
* @param wait Boolean wait set if current thread should wait as a result of sync operation * @param wait Boolean wait set if current thread should wait as a result of sync operation