Last updated:
0 purchases
future queue
future_queue #
Dart package which provides sequential future execution with return values.
How it works #
Here is a code example which demonstrates how futures are queued:
final futureQueue = FutureQueue<int>(seed: 0);
final result1 = futureQueue.append(
() => Future.delayed(Duration(seconds: 5), () => 1),
);
final result2 = futureQueue.append(
() => Future.delayed(Duration(seconds: 1), () => 2),
);
print('result1: ${await result1}');
print('result2: ${await result2}');
copied to clipboard
Will print:
1
2
copied to clipboard
Allowing null #
Simply set the type of the FutureQueue to a nullable value:
final futureQueue = FutureQueue<int?>(seed: null);
copied to clipboard
Even though the first future takes 4 seconds longer than the second future.
Error handling #
If the future throws an exception it can be caught, as usual, by chaining a catchError on the Future returned by FutureBuilder's append.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.