diff --git a/source/RobotAPI/libraries/Controllers/RobotUnit.cpp b/source/RobotAPI/libraries/Controllers/RobotUnit.cpp
index e7985ae2d41e6195b81d98c34c337f92a9099d94..8fcc18853926f6247f11471a9dbfa7c37d19b72e 100644
--- a/source/RobotAPI/libraries/Controllers/RobotUnit.cpp
+++ b/source/RobotAPI/libraries/Controllers/RobotUnit.cpp
@@ -319,6 +319,7 @@ bool armarx::RobotUnit::hasLVL0Controller(const std::string& jointName, const st
 
 bool armarx::RobotUnit::loadLibFromAbsolutePath(const std::string& path)
 {
+    GuardType guard {dataMutex};
     if (loadedLibs.count(path) > 0)
     {
         return true;