future_context library

Classes

FutureContext
非同期(Async)状態を管理する. FutureContextの目標はキャンセル可能な非同期処理のサポートである.

Extensions

StreamWithContext on Stream<T>

Functions

withContext<T>(FutureContext? context, FutureSuspendBlock<T> block) Future<T>
指定した context を使用してsuspend関数を実行する. 実行中に context がキャンセルされた場合、この関数は CancellationException を投げて早期終了する.
withContextGroup<T>(Iterable<FutureContext> contexts, FutureSuspendBlock<T> block) Future<T>
指定した contexts を使用してsuspend関数を実行する. 実行中に contexts のいずれかがキャンセルされた場合、この関数は CancellationException を投げて早期終了する.
withTimeout<T>(FutureContext? context, Duration timeout, FutureSuspendBlock<T> block) Future<T>
指定した context を使用してsuspend関数を実行する. 実行中に context がキャンセルされた場合、この関数は CancellationException を投げて早期終了する. また、指定した timeout が経過した場合は TimeoutException を投げて早期終了する.

Typedefs

FutureSuspendBlock<T> = Future<T> Function(FutureContext context)
非同期処理のキャンセル不可能な1ブロック処理 このブロック完了後、FutureContextは復帰チェックを行い、必要であればキャンセル等を行う.