Replace std::lock_guard and std::lock with std::scoped_lock (#1758)

std::scoped_lock was introduced in C++17 and is strictly better than
std::lock_guard as it supports locking any number of mutexes safely.
It's also easier to use than std::lock for locking multiple mutexes at
once.
This commit is contained in:
Tyler Veness
2019-07-08 22:58:39 -07:00
committed by Peter Johnson
parent 24d31df55a
commit 62be0392b6
79 changed files with 472 additions and 476 deletions

View File

@@ -67,7 +67,7 @@ void HALSimDSNT::Initialize() {
enabled.AddListener(
[this](const nt::EntryNotification& ev) -> void {
std::lock_guard lock(modeMutex);
std::scoped_lock lock(modeMutex);
if (!this->isEstop) {
this->isEnabled = ev.value->GetBoolean();
} else {
@@ -80,7 +80,7 @@ void HALSimDSNT::Initialize() {
estop.AddListener(
[this](const nt::EntryNotification& ev) -> void {
std::lock_guard lock(modeMutex);
std::scoped_lock lock(modeMutex);
this->isEstop = ev.value->GetBoolean();
if (this->isEstop) {
this->isEnabled = false;
@@ -136,7 +136,7 @@ void HALSimDSNT::Initialize() {
void HALSimDSNT::HandleModePress(enum HALSimDSNT_Mode mode, bool isPressed) {
if (isPressed) {
if (mode != currentMode) {
std::lock_guard lock(modeMutex);
std::scoped_lock lock(modeMutex);
currentMode = mode;
isEnabled = false;
this->DoModeUpdate();