diff options
author | nat-goodspeed <nat@lindenlab.com> | 2024-07-10 11:15:51 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-10 10:15:51 -0500 |
commit | 8b59d9bb42f7a0421c27daa75672ae775bb8927f (patch) | |
tree | 4c93402f5fd51391982491a88ac9b6add694aa40 /indra/llcommon/llcoros.h | |
parent | 35246a95039e242c6167f6c52a0c6cc49e004f23 (diff) |
Introduce LLCoros::RMutex, use for SettingsConfig::mRecorderMutex (#1980)
in llerror.cpp.
Diffstat (limited to 'indra/llcommon/llcoros.h')
-rw-r--r-- | indra/llcommon/llcoros.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/llcommon/llcoros.h b/indra/llcommon/llcoros.h index 369d65407e..c3820ae987 100644 --- a/indra/llcommon/llcoros.h +++ b/indra/llcommon/llcoros.h @@ -31,8 +31,9 @@ #include "llexception.h" #include <boost/fiber/fss.hpp> -#include <boost/fiber/future/promise.hpp> #include <boost/fiber/future/future.hpp> +#include <boost/fiber/future/promise.hpp> +#include <boost/fiber/recursive_mutex.hpp> #include "mutex.h" #include "llsingleton.h" #include "llinstancetracker.h" @@ -307,6 +308,12 @@ public: // use mutex, lock, condition_variable suitable for coroutines using Mutex = boost::fibers::mutex; + using RMutex = boost::fibers::recursive_mutex; + // With C++17, LockType is deprecated: at this point we can directly + // declare 'std::unique_lock lk(some_mutex)' without explicitly stating + // the mutex type. Sadly, making LockType an alias template for + // std::unique_lock doesn't work the same way: Class Template Argument + // Deduction only works for class templates, not alias templates. using LockType = std::unique_lock<Mutex>; using cv_status = boost::fibers::cv_status; using ConditionVariable = boost::fibers::condition_variable; |