aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/Runtime.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/Runtime.hpp')
-rw-r--r--src/armnn/Runtime.hpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/armnn/Runtime.hpp b/src/armnn/Runtime.hpp
index 12211f4e04..29bb6808d8 100644
--- a/src/armnn/Runtime.hpp
+++ b/src/armnn/Runtime.hpp
@@ -73,6 +73,17 @@ private:
LoadedNetwork* GetLoadedNetworkPtr(NetworkId networkId) const;
+ template<typename Func>
+ void LoadedNetworkFuncSafe(NetworkId networkId, Func f)
+ {
+ std::lock_guard<std::mutex> lockGuard(m_Mutex);
+ auto iter = m_LoadedNetworks.find(networkId);
+ if (iter != m_LoadedNetworks.end())
+ {
+ f(iter->second.get());
+ }
+ }
+
mutable std::mutex m_Mutex;
std::unordered_map<NetworkId, std::unique_ptr<LoadedNetwork>> m_LoadedNetworks;