Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
1098 of 1246 menu
◀ ▶

Тип Poll

Тип Poll - это перечисление из модуля std::task, которое используется в асинхронном программировании для представления результата проверки готовности Future. Он имеет два варианта: Ready и Pending. Вариант Ready содержит значение, которое возвращает асинхронная операция, а вариант Pending означает, что операция ещё не завершена и нужно повторить попытку позже.

Синтаксис

enum Poll<T> { Ready(T), Pending, }

Пример

Давайте создадим простое значение типа Poll с вариантом Ready и выведем его на экран:

use std::task::Poll; fn main() { let res: Poll<i32> = Poll::Ready(42); println!("{:?}", res); }

Результат выполнения кода:

Ready(42)

Пример

Давайте создадим значение типа Poll с вариантом Pending и выведем его на экран:

use std::task::Poll; fn main() { let res: Poll<i32> = Poll::Pending; println!("{:?}", res); }

Результат выполнения кода:

Pending

Пример

Давайте обработаем значение Poll с помощью конструкции match и выведем соответствующее сообщение:

use std::task::Poll; fn main() { let res: Poll<i32> = Poll::Ready(100); match res { Poll::Ready(value) => println!("Ready with: {}", value), Poll::Pending => println!("Still pending"), } }

Результат выполнения кода:

Ready with: 100

Смотрите также

  • тип Future,
    который представляет асинхронную операцию
  • метод poll,
    который проверяет готовность Future и возвращает Poll
  • вариант Ready,
    который означает, что операция завершена
  • вариант Pending,
    который означает, что операция ещё не завершена
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить