Spec-Zone.ru › Tokio

Трейт AioSource

pub trait AioSource {
    // Required method
    fn deregister(&mut self);

    // Provided methods
    fn register(&mut self, _kq: RawFd, _token: usize) { ... }
    fn register_borrowed(&mut self, kq: BorrowedFd<'_>, token: usize) { ... }
}
Доступен только в FreeBSD и при включённой возможности крейта net.

Как mio::event::Source, но только для POSIX AIO.

Потребитель Tokio должен передать реализацию этого трейта, чтобы создать объект Aio. Реализации должны реализовать как минимум один из методов AioSource::register и AioSource::register_borrowed.

Обязательные методы

fn deregister(&mut self)

Отменяет регистрацию этого источника событий AIO в реакторе Tokio.

Предоставляемые методы

fn register(&mut self, _kq: RawFd, _token: usize)

👎Устарел начиная с версии 1.52.0:

вместо него используйте register_borrowed

Регистрирует этот источник событий AIO в реакторе Tokio.

Безопасность

Этот метод безопасен с точки зрения памяти, но не с точки зрения ввода-вывода. Если файл, на который ссылается kq, будет удалён, этот источник может уведомить не тот файл.

fn register_borrowed(&mut self, kq: BorrowedFd<'_>, token: usize)

Регистрирует этот источник событий AIO в реакторе Tokio.

Совместимость с dyn

Этот трейт совместим с dyn.

В более ранних версиях Rust совместимость с dyn называлась «безопасностью объектов».

Реализующие типы

MIT License
Copyright © Tokio Contributors
https://docs.rs/tokio/1.53.1/tokio/io/bsd/trait.AioSource.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API