#[repr(u8)]
pub enum QoS {
AtMostOnce,
AtLeastOnce,
ExactlyOnce,
}
Expand description
Quality of Service
Variants§
AtMostOnce
At most once delivery
The message is delivered according to the capabilities of the underlying network. No response is sent by the receiver and no retry is performed by the sender. The message arrives at the receiver either once or not at all.
AtLeastOnce
At least once delivery
This quality of service ensures that the message arrives at the receiver at least once. A QoS 1 PUBLISH Packet has a Packet Identifier in its variable header and is acknowledged by a PUBACK Packet.
ExactlyOnce
Exactly once delivery
This is the highest quality of service, for use when neither loss nor duplication of messages are acceptable. There is an increased overhead associated with this quality of service.
Trait Implementations§
source§impl<'de> Deserialize<'de> for QoS
impl<'de> Deserialize<'de> for QoS
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Ord for QoS
impl Ord for QoS
source§impl PartialOrd<QoS> for QoS
impl PartialOrd<QoS> for QoS
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more