thread/Mutex: add method ScopeLock::Unlock()

This commit is contained in:
Max Kellermann 2016-05-02 23:32:44 +02:00
parent cc9345e703
commit eca6b9f0af

View File

@ -45,17 +45,25 @@ class Mutex : public PosixMutex {};
class ScopeLock {
Mutex &mutex;
bool active = true;
public:
ScopeLock(Mutex &_mutex):mutex(_mutex) {
mutex.lock();
};
~ScopeLock() {
mutex.unlock();
if (active)
mutex.unlock();
};
ScopeLock(const ScopeLock &other) = delete;
ScopeLock &operator=(const ScopeLock &other) = delete;
void Unlock() {
mutex.unlock();
active = false;
}
};
/**