mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 09:47:35 +00:00
Kernel: Remove unused ScopedLockRelease class
This commit is contained in:
parent
7006cb82bd
commit
a8967388d3
1 changed files with 0 additions and 48 deletions
|
@ -154,52 +154,4 @@ private:
|
||||||
bool m_locked { true };
|
bool m_locked { true };
|
||||||
};
|
};
|
||||||
|
|
||||||
class ScopedLockRelease {
|
|
||||||
AK_MAKE_NONCOPYABLE(ScopedLockRelease);
|
|
||||||
|
|
||||||
public:
|
|
||||||
ScopedLockRelease& operator=(ScopedLockRelease&&) = delete;
|
|
||||||
|
|
||||||
ScopedLockRelease(Mutex& lock)
|
|
||||||
: m_lock(&lock)
|
|
||||||
, m_previous_mode(lock.force_unlock_if_locked(m_previous_recursions))
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
ScopedLockRelease(ScopedLockRelease&& from)
|
|
||||||
: m_lock(exchange(from.m_lock, nullptr))
|
|
||||||
, m_previous_mode(exchange(from.m_previous_mode, Mutex::Mode::Unlocked))
|
|
||||||
, m_previous_recursions(exchange(from.m_previous_recursions, 0))
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
~ScopedLockRelease()
|
|
||||||
{
|
|
||||||
if (m_lock && m_previous_mode != Mutex::Mode::Unlocked)
|
|
||||||
m_lock->restore_lock(m_previous_mode, m_previous_recursions);
|
|
||||||
}
|
|
||||||
|
|
||||||
void restore_lock()
|
|
||||||
{
|
|
||||||
VERIFY(m_lock);
|
|
||||||
if (m_previous_mode != Mutex::Mode::Unlocked) {
|
|
||||||
m_lock->restore_lock(m_previous_mode, m_previous_recursions);
|
|
||||||
m_previous_mode = Mutex::Mode::Unlocked;
|
|
||||||
m_previous_recursions = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void do_not_restore()
|
|
||||||
{
|
|
||||||
VERIFY(m_lock);
|
|
||||||
m_previous_mode = Mutex::Mode::Unlocked;
|
|
||||||
m_previous_recursions = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
Mutex* m_lock;
|
|
||||||
Mutex::Mode m_previous_mode;
|
|
||||||
u32 m_previous_recursions;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue