BCNP 3.2.1
Batched Command Network Protocol
Loading...
Searching...
No Matches
message_queue.h File Reference

Timed message queue for executing duration-based commands. More...

#include <algorithm>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <mutex>
#include <optional>
#include <vector>
Include dependency graph for message_queue.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  bcnp::MessageQueueConfig
 Configuration parameters for a message queue. More...
 
struct  bcnp::MessageQueueMetrics
 Runtime metrics for queue diagnostics. More...
 
struct  bcnp::HasDurationMs< T >
 Type trait to detect messages with a durationMs field. More...
 
class  bcnp::MessageQueue< MsgType >
 Generic timed message queue for any message type with durationMs field. More...
 
class  bcnp::MessageQueue< MsgType >::Transaction
 RAII transaction for atomic batch operations. More...
 

Namespaces

namespace  bcnp
 

Typedefs

template<typename MsgType >
using bcnp::TimedQueue = MessageQueue<MsgType>
 Convenience alias for MessageQueue (backward compatibility).
 

Detailed Description

Timed message queue for executing duration-based commands.

Provides a generic queue that manages timed execution of messages, ensuring each message runs for its specified duration before advancing to the next. Handles connection timeouts, lag compensation, and queue overflow scenarios.

All public methods use mutex synchronization.

Definition in file message_queue.h.