Clio
develop
The XRP Ledger API server.
Theme:
Default
Round
Robot
Toggle main menu visibility
Loading...
Searching...
No Matches
StopHelper.hpp
1
#pragma once
2
3
#include <boost/asio/spawn.hpp>
4
#include <boost/signals2/signal.hpp>
5
#include <boost/signals2/variadic_signal.hpp>
6
7
#include <atomic>
8
#include <memory>
9
10
namespace
util
{
11
15
class
StopHelper {
16
boost::signals2::signal<void()> onStopReady_;
17
std::unique_ptr<std::atomic_bool> stopped_ = std::make_unique<std::atomic_bool>(
false
);
18
19
public
:
20
StopHelper() =
default
;
21
~StopHelper() =
default
;
22
23
StopHelper(StopHelper&&) =
delete
;
24
StopHelper&
25
operator=(StopHelper&&) =
delete
;
26
StopHelper(StopHelper
const
&) =
delete
;
27
StopHelper&
28
operator=(StopHelper
const
&) =
delete
;
29
33
void
34
readyToStop
();
35
41
void
42
asyncWaitForStop
(boost::asio::yield_context yield);
43
};
44
45
}
// namespace util
util::StopHelper::asyncWaitForStop
void asyncWaitForStop(boost::asio::yield_context yield)
Wait for the class to stop.
Definition
StopHelper.cpp:20
util::StopHelper::readyToStop
void readyToStop()
Notify that the class is ready to stop.
Definition
StopHelper.cpp:13
util
This namespace contains various utilities.
Definition
HandlerRegistry.hpp:24
src
util
StopHelper.hpp
Generated by
1.17.0