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

Метод resume

Метод resume класса StreamSubscription возобновляет приостановленную подписку на поток данных. Он используется после метода pause, чтобы снова начать получать события из потока. Метод не принимает параметров и ничего не возвращает.

Синтаксис

subscription.resume()

Пример

Давайте создадим поток, приостановим подписку и затем возобновим её:

import 'dart:async'; void main() { StreamController<int> controller = StreamController<int>(); StreamSubscription<int> subscription; subscription = controller.stream.listen((value) { print(value); }); controller.add(1); controller.add(2); subscription.pause(); print('paused'); subscription.resume(); print('resumed'); controller.add(3); controller.close(); }

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

1 2 "paused" "resumed" 3

Пример

Давайте приостановим подписку с задержкой и возобновим её после паузы:

import 'dart:async'; void main() { StreamController<int> controller = StreamController<int>(); StreamSubscription<int> subscription; subscription = controller.stream.listen((value) { print('received: $value'); }); controller.add(1); subscription.pause(Future.delayed(Duration(seconds: 1))); print('pause scheduled'); subscription.resume(); print('resumed immediately'); controller.add(2); controller.close(); }

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

"received: 1" "pause scheduled" "resumed immediately" "received: 2"

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

  • класс StreamSubscription,
    который представляет подписку на поток
  • метод pause,
    который приостанавливает подписку
  • метод cancel,
    который отменяет подписку
  • метод listen,
    который создаёт подписку на поток
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить