Expand description
A Future value that resolves once it’s explicitly completed, potentially
from a different thread or task, similar to Java’s CompletableFuture.
Currently, this is implemented using Mutex from the parking_lot crate.
§Examples
Create an incomplete ControlledFuture and explicitly complete it with the
completer:
let (future, completer) = ControlledFuture::<i32>::new();
completer.complete(5).unwrap();
assert_eq!(block_on(future), Ok(5));Create an initially complete ControlledFuture that can be immediately
resolved:
assert_eq!(block_on(ControlledFuture::new_completed(10)), Ok(10));Structs§
- Controlled
Future - A
Futurethat will resolve either immediately, or in the future. - Future
Clicker - Used to complete a
ControlledFutureso it may resolve to the given value.
Enums§
- Error
- Error returned by
FutureClicker::completeandControlledFuturefuture.
Type Aliases§
- Result
- Result of
FutureClicker::completeand theControlledFuturefuture.