#[non_exhaustive]pub enum DriverKind {
Blocking,
Reactor,
Uring,
Auto,
}Expand description
Which driver moves the bytes.
Auto picks the reactor where it is built and available, otherwise the
blocking pool.
§Examples
assert_eq!(net_io::DriverKind::default(), net_io::DriverKind::Auto);Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Blocking
A bounded pool of threads, one connection per thread.
Reactor
One event loop per worker (epoll, kqueue, IOCP); from 0.5.0.
Uring
io_uring on Linux; after 1.0.0.
Auto
The reactor where available, otherwise the blocking pool.
Trait Implementations§
Source§impl Clone for DriverKind
impl Clone for DriverKind
impl Copy for DriverKind
Source§impl Debug for DriverKind
impl Debug for DriverKind
Source§impl Default for DriverKind
impl Default for DriverKind
impl Eq for DriverKind
Source§impl Hash for DriverKind
impl Hash for DriverKind
Source§impl PartialEq for DriverKind
impl PartialEq for DriverKind
impl StructuralPartialEq for DriverKind
Auto Trait Implementations§
impl Freeze for DriverKind
impl RefUnwindSafe for DriverKind
impl Send for DriverKind
impl Sync for DriverKind
impl Unpin for DriverKind
impl UnsafeUnpin for DriverKind
impl UnwindSafe for DriverKind
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