pub enum Lane {
Sync,
ToDevice,
Room(RoomId),
AccountData,
Other,
}Expand description
Which ordering class a pending request belongs to — see the module doc’s “Lanes” table for the exact in-flight limit and rationale of each variant.
Variants§
Sync
GET /sync — at most one in flight.
ToDevice
PUT /sendToDevice/... — strictly ordered, at most one in flight
globally (preserves per-device Olm ratchet order across retries).
Room(RoomId)
A room-scoped call — ordered per room, at most one in flight per room id.
AccountData
Every account-data write (PUT .../account_data/..., global and
room-scoped) – strictly FIFO, at most one in flight. A record
persisted before this lane existed carries Lane::Other instead;
OutgoingQueue::load moves those into this lane.
Other
Everything else — unordered, bounded concurrency
([OTHER_LANE_CONCURRENCY]).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Lane
impl<'de> Deserialize<'de> for Lane
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
impl Eq for Lane
impl StructuralPartialEq for Lane
Auto Trait Implementations§
impl Freeze for Lane
impl RefUnwindSafe for Lane
impl Send for Lane
impl Sync for Lane
impl Unpin for Lane
impl UnsafeUnpin for Lane
impl UnwindSafe for Lane
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more