Структура Interest
pub struct Interest(/* private fields */);
net, либо tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt.Интерес к событию готовности.
Указывает события готовности, которые интересуют вызывающий код при ожидании состояний готовности ресурса ввода-вывода.
Реализации
impl Interest
pub const AIO: Interest
net.Интерес к POSIX AIO.
pub const LIO: Interest
net.Интерес к событиям POSIX AIO lio_listio.
pub const READABLE: Interest
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Интерес ко всем событиям чтения.
Интерес к чтению включает события закрытия для чтения.
pub const WRITABLE: Interest
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Интерес ко всем событиям записи.
Интерес к записи включает события закрытия для записи.
pub const ERROR: Interest
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Интерес к событиям ошибок.
Передаёт интерес к ошибкам нижележащему селектору ОС. Поведение зависит от платформы; см. документацию для вашей платформы.
pub const PRIORITY: Interest
Возвращает набор Interest, представляющий интерес к событиям завершения с приоритетом.
pub const fn is_readable(self) -> bool
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Возвращает true, если значение включает интерес к чтению.
Примеры
use tokio::io::Interest;
assert!(Interest::READABLE.is_readable());
assert!(!Interest::WRITABLE.is_readable());
let both = Interest::READABLE | Interest::WRITABLE;
assert!(both.is_readable());pub const fn is_writable(self) -> bool
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Возвращает true, если значение включает интерес к записи.
Примеры
use tokio::io::Interest;
assert!(!Interest::READABLE.is_writable());
assert!(Interest::WRITABLE.is_writable());
let both = Interest::READABLE | Interest::WRITABLE;
assert!(both.is_writable());pub const fn is_error(self) -> bool
net либо tokio_unstable и Linux и компоненте fs и компоненте io-uring и компоненте rt, либо Unix и компоненте process, либо Unix и компоненте signal.Возвращает true, если значение включает интерес к ошибкам.
Примеры
use tokio::io::Interest;
assert!(Interest::ERROR.is_error());
assert!(!Interest::WRITABLE.is_error());
let combined = Interest::READABLE | Interest::ERROR;
assert!(combined.is_error());pub const fn is_priority(self) -> bool
Возвращает true, если значение включает интерес к событиям с приоритетом.
Примеры
use tokio::io::Interest;
assert!(!Interest::READABLE.is_priority());
assert!(Interest::PRIORITY.is_priority());
let both = Interest::READABLE | Interest::PRIORITY;
assert!(both.is_priority());pub const fn add(self, other: Interest) -> Interest
net или tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt; либо Unix и функции crate process; либо Unix и функции crate signal.Сложить два значения Interest.
Эта функция работает в контексте const.
Примеры
use tokio::io::Interest;
const BOTH: Interest = Interest::READABLE.add(Interest::WRITABLE);
assert!(BOTH.is_readable());
assert!(BOTH.is_writable());pub fn remove(self, other: Interest) -> Option<Interest>
net или tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt; либо Unix и функции crate process; либо Unix и функции crate signal.Удалить Interest из self.
Элементы интереса, присутствующие в other, но не в self, игнорируются.
Возвращает None, если после удаления Interest набор окажется пустым.
Примеры
use tokio::io::Interest;
const RW_INTEREST: Interest = Interest::READABLE.add(Interest::WRITABLE);
let w_interest = RW_INTEREST.remove(Interest::READABLE).unwrap();
assert!(!w_interest.is_readable());
assert!(w_interest.is_writable());
// Removing all interests from the set returns `None`.
assert_eq!(w_interest.remove(Interest::WRITABLE), None);
// Remove all interests at once.
assert_eq!(RW_INTEREST.remove(RW_INTEREST), None);Реализации трейтов
impl BitOr for Interest
net либо tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt, либо Unix и функции crate process, либо Unix и функции crate signal.impl BitOrAssign for Interest
net либо tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt, либо Unix и функции crate process, либо Unix и функции crate signal.fn bitor_assign(&mut self, other: Self)
|=. Подробнее
impl Clone for Interest
net либо tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt, либо Unix и функции crate process, либо Unix и функции crate signal.impl Copy for Interest
net либо tokio_unstable и Linux, а также функции crate fs и функции crate io-uring и функции crate rt, либо Unix и функции crate process, либо Unix и функции crate signal.impl Eq for Interest
net либо tokio_unstable и Linux, а также функции crate fs, функции crate io-uring и функции crate rt либо Unix и функции crate process либо Unix и функции crate signal.impl PartialEq for Interest
net либо tokio_unstable и Linux, а также функции crate fs, функции crate io-uring и функции crate rt либо Unix и функции crate process либо Unix и функции crate signal.impl StructuralPartialEq for Interest
net либо tokio_unstable и Linux, а также функции crate fs, функции crate io-uring и функции crate rt либо Unix и функции crate process либо Unix и функции crate signal.Реализации автоматических трейтов
impl Freeze for Interest
impl RefUnwindSafe for Interest
impl Send for Interest
impl Sync for Interest
impl Unpin for Interest
impl UnsafeUnpin for Interest
impl UnwindSafe for Interest
Общие реализации
impl<T> BorrowMut<T> for Twhere T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Twhere T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)
impl<T> Instrument for T
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
impl<T> WithSubscriber for T
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Subscriber к этому типу и возвращает обёртку WithDispatch. Подробнее
MIT License
Copyright © Tokio Contributors
https://docs.rs/tokio/1.53.1/tokio/io/struct.Interest.html