Effect<Value>.asyncPeriodic constructor
Effect<Value>.asyncPeriodic (})
Asynchronous counterpart to Effect.periodic. The computation can
perform suspending work before yielding each value.
Example:
final asyncTicker = Effect.asyncPeriodic(
const Duration(seconds: 1),
(count) async => await loadFrame(count),
);
Implementation
factory Effect.asyncPeriodic(
Duration interval,
Future<Value> Function(int computationCount) computation, {
Value Function()? onDone,
Value Function(Object error, StackTrace stackTrace)? onError,
bool? cancelOnError,
}) =>
Effect.stream(
stream: Stream.periodic(interval, computation).asyncMap((e) async => await e),
onDone: onDone,
onError: onError,
cancelOnError: cancelOnError,
);