diff options
author | MacroFake <falke.marco@gmail.com> | 2022-04-30 09:19:28 +0200 |
---|---|---|
committer | MacroFake <falke.marco@gmail.com> | 2022-04-30 09:17:17 +0200 |
commit | fa4652ce5995ace831b6a4d3125bfcac9563ff6f (patch) | |
tree | e2720b4bad6828fa3f010320fe76695fea39159f /src/scheduler.h | |
parent | 26296eba3dc34043b025bda167386c47693705b5 (diff) | |
download | bitcoin-fa4652ce5995ace831b6a4d3125bfcac9563ff6f.tar.xz |
Pass lifetimebound reference to SingleThreadedSchedulerClient
Diffstat (limited to 'src/scheduler.h')
-rw-r--r-- | src/scheduler.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/scheduler.h b/src/scheduler.h index bb0abfbf7a..eb350e4bc3 100644 --- a/src/scheduler.h +++ b/src/scheduler.h @@ -5,13 +5,18 @@ #ifndef BITCOIN_SCHEDULER_H #define BITCOIN_SCHEDULER_H +#include <attributes.h> +#include <sync.h> +#include <threadsafety.h> + +#include <chrono> #include <condition_variable> +#include <cstddef> #include <functional> #include <list> #include <map> #include <thread> - -#include <sync.h> +#include <utility> /** * Simple class for background tasks that should be run @@ -117,7 +122,7 @@ private: class SingleThreadedSchedulerClient { private: - CScheduler* m_pscheduler; + CScheduler& m_scheduler; Mutex m_callbacks_mutex; std::list<std::function<void()>> m_callbacks_pending GUARDED_BY(m_callbacks_mutex); @@ -127,7 +132,7 @@ private: void ProcessQueue(); public: - explicit SingleThreadedSchedulerClient(CScheduler* pschedulerIn) : m_pscheduler(pschedulerIn) {} + explicit SingleThreadedSchedulerClient(CScheduler& scheduler LIFETIMEBOUND) : m_scheduler{scheduler} {} /** * Add a callback to be executed. Callbacks are executed serially |