diff options
| -rw-r--r-- | include/framework/scheduling/LockManager.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/framework/scheduling/LockManager.h b/include/framework/scheduling/LockManager.h index 275c5ae..a40cf7a 100644 --- a/include/framework/scheduling/LockManager.h +++ b/include/framework/scheduling/LockManager.h @@ -27,12 +27,13 @@ public: void release_lock(size_t idx, size_t version) { if (idx < m_lks.size()) { assert(m_lks.at(idx).load() == true); - m_lks.at(idx).store(false); while (m_last_unlocked_version.load() < version) { auto tmp = m_last_unlocked_version.load(); m_last_unlocked_version.compare_exchange_strong(tmp, version); } + + m_lks.at(idx).store(false); } } |