71 void signal(const Core::NetworkMessage& message);
77 Kriya::NetworkAwaiter next_message();
82 [[nodiscard]]
bool has_pending() const;
87 [[nodiscard]]
size_t pending_count() const;
95 static constexpr
size_t QUEUE_CAPACITY = 256;
97 uint64_t m_endpoint_id {};
108 std::atomic<Kriya::NetworkAwaiter*> m_waiters_head {
nullptr };
110 std::optional<Core::NetworkMessage> pop_message();
Awaiter for suspending a coroutine until a network message arrives.
Policy-driven unified circular buffer implementation.
NetworkSource(const NetworkSource &)=delete
NetworkSource(NetworkSource &&) noexcept=default
NetworkSource & operator=(const NetworkSource &)=delete
Memory::LockFreeQueue< Core::NetworkMessage, QUEUE_CAPACITY > m_queue
Awaitable broadcast message stream for a network endpoint.
Describes one logical send/receive endpoint managed by a backend.