MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ register_waiter()

void MayaFlux::Vruta::NetworkSource::register_waiter ( Kriya::NetworkAwaiter awaiter)
private

Definition at line 97 of file NetworkSource.cpp.

98{
99 auto* head = m_waiters_head.load(std::memory_order_relaxed);
100 do {
101 awaiter->m_next.store(head, std::memory_order_relaxed);
102 } while (!m_waiters_head.compare_exchange_weak(head, awaiter,
103 std::memory_order_release, std::memory_order_relaxed));
104}
std::atomic< Kriya::NetworkAwaiter * > m_waiters_head
Head of the intrusive lock-free waiter list.

References MayaFlux::Kriya::NetworkAwaiter::m_next, and m_waiters_head.

Referenced by MayaFlux::Kriya::NetworkAwaiter::await_suspend().

+ Here is the caller graph for this function: