diff --git a/rmw_fastrtps_shared_cpp/src/types/guard_condition.hpp b/rmw_fastrtps_shared_cpp/src/types/guard_condition.hpp index 6f0ab0299..ba88faa23 100644 --- a/rmw_fastrtps_shared_cpp/src/types/guard_condition.hpp +++ b/rmw_fastrtps_shared_cpp/src/types/guard_condition.hpp @@ -72,10 +72,7 @@ class GuardCondition bool getHasTriggered() { - std::lock_guard lock(internalMutex_); - bool ret = hasTriggered_; - hasTriggered_ = false; - return ret; + return hasTriggered_.exchange(false); } private: