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

◆ shutdown()

void MayaFlux::Journal::Archivist::Impl::shutdown ( )
inline

Definition at line 53 of file Archivist.cpp.

54 {
55 if (!m_initialized.load(std::memory_order_acquire))
56 return;
57 if (m_shutdown_in_progress.exchange(true, std::memory_order_acq_rel))
58 return;
59
60 m_worker_running.store(false, std::memory_order_release);
61 if (m_worker_thread.joinable())
62 m_worker_thread.join();
63
65 m_initialized.store(false, std::memory_order_release);
66 m_shutdown_in_progress.store(false, std::memory_order_release);
67 std::cout << "[MayaFlux::Journal] Shutdown\n";
68 }
std::atomic< bool > m_initialized
std::atomic< bool > m_shutdown_in_progress
std::atomic< bool > m_worker_running
void drain_ring_buffer()
Drain all pending ring buffer entries to sinks or console.

References drain_ring_buffer(), m_initialized, m_shutdown_in_progress, m_worker_running, and m_worker_thread.

+ Here is the call graph for this function: