Struct zenoh_config::QueueConf
source · pub struct QueueConf {
pub size: QueueSizeConf,
pub congestion_control: CongestionControlConf,
/* private fields */
}
Fields§
§size: QueueSizeConf
The size of each priority queue indicates the number of batches a given queue can contain. The amount of memory being allocated for each queue is then SIZE_XXX * BATCH_SIZE. In the case of the transport link MTU being smaller than the ZN_BATCH_SIZE, then amount of memory being allocated for each queue is SIZE_XXX * LINK_MTU. If qos is false, then only the DATA priority will be allocated.
congestion_control: CongestionControlConf
Congestion occurs when the queue is empty (no available batch). Using CongestionControl::Block the caller is blocked until a batch is available and re-insterted into the queue. Using CongestionControl::Drop the message might be dropped, depending on conditions configured here.
Implementations§
source§impl QueueConf
impl QueueConf
pub fn validate(&self) -> bool
pub fn new( size: QueueSizeConf, congestion_control: CongestionControlConf, backoff: u64 ) -> Result<Self, Self>
sourcepub fn size(&self) -> &QueueSizeConf
pub fn size(&self) -> &QueueSizeConf
The size of each priority queue indicates the number of batches a given queue can contain. The amount of memory being allocated for each queue is then SIZE_XXX * BATCH_SIZE. In the case of the transport link MTU being smaller than the ZN_BATCH_SIZE, then amount of memory being allocated for each queue is SIZE_XXX * LINK_MTU. If qos is false, then only the DATA priority will be allocated.
pub fn validate_size(value: &QueueSizeConf) -> bool
sourcepub fn set_size(
&mut self,
value: QueueSizeConf
) -> Result<QueueSizeConf, QueueSizeConf>
pub fn set_size( &mut self, value: QueueSizeConf ) -> Result<QueueSizeConf, QueueSizeConf>
The size of each priority queue indicates the number of batches a given queue can contain. The amount of memory being allocated for each queue is then SIZE_XXX * BATCH_SIZE. In the case of the transport link MTU being smaller than the ZN_BATCH_SIZE, then amount of memory being allocated for each queue is SIZE_XXX * LINK_MTU. If qos is false, then only the DATA priority will be allocated.
sourcepub fn congestion_control(&self) -> &CongestionControlConf
pub fn congestion_control(&self) -> &CongestionControlConf
Congestion occurs when the queue is empty (no available batch). Using CongestionControl::Block the caller is blocked until a batch is available and re-insterted into the queue. Using CongestionControl::Drop the message might be dropped, depending on conditions configured here.
sourcepub fn set_congestion_control(
&mut self,
value: CongestionControlConf
) -> Result<CongestionControlConf, CongestionControlConf>
pub fn set_congestion_control( &mut self, value: CongestionControlConf ) -> Result<CongestionControlConf, CongestionControlConf>
Congestion occurs when the queue is empty (no available batch). Using CongestionControl::Block the caller is blocked until a batch is available and re-insterted into the queue. Using CongestionControl::Drop the message might be dropped, depending on conditions configured here.