91 :
status_(other.status_.load(std::memory_order_acquire))
94 std::memory_order_release);
101 status_.store(other.status_.load(std::memory_order_acquire),
102 std::memory_order_release);
104 std::memory_order_release);
115 return status_.load(std::memory_order_acquire);
161 return status_.compare_exchange_strong(
182 return status_.compare_exchange_strong(
Thread-safe connection state management.
auto status() const -> connection_status
Gets the current connection status.
std::atomic< connection_status > status_
auto is_disconnected() const -> bool
Checks if currently disconnected.
auto reset() -> void
Resets to disconnected state.
auto set_connecting() -> bool
Attempts to transition from disconnected to connecting.
~connection_state()=default
Destructor.
connection_state()=default
Default constructor. Initializes to disconnected state.
connection_state & operator=(const connection_state &)=delete
auto is_connecting() const -> bool
Checks if connection is in progress.
auto set_connected() -> void
Transitions to connected state.
auto set_disconnected() -> void
Transitions to disconnected state.
auto set_disconnecting() -> bool
Attempts to transition from connected to disconnecting.
auto is_connected() const -> bool
Checks if currently connected.
auto is_disconnecting() const -> bool
Checks if disconnection is in progress.
connection_state(const connection_state &)=delete
connection_state & operator=(connection_state &&other) noexcept
connection_state(connection_state &&other) noexcept
Utility components for network_system.
connection_status
Represents the connection state of a network component.
@ connected
Successfully connected.
@ disconnecting
Disconnection in progress.
@ disconnected
Not connected.
@ connecting
Connection in progress.