runAsync method

  1. @override
Future<void> runAsync(
  1. FutureOr<void> callback()
)
override

Runs callback and adds events to stream using the following sequence:

Implementation

@override
Future<void> runAsync(FutureOr<void> Function() callback) async {
  if (current.state.isReady) {
    try {
      _add(busy);
      await callback();
      _add(delaying);
    } catch (error, stacktrace) {
      _controller.addError(error, stacktrace);
    } finally {
      _timer = Timer(duration, () {
        _add(ready);
      });
    }
  }
}