diff options
Diffstat (limited to 'src/armnn/Runtime.hpp')
-rw-r--r-- | src/armnn/Runtime.hpp | 11 |
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; |