Show / Hide Table of Contents

Class Future

Represents lightweight version of Task.

Inheritance
Object
Future
Future<T>
Implements
IFuture
INotifyCompletion
Inherited Members
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
Namespace: DotNext.Threading.Tasks
Assembly: DotNext.dll
Syntax
public abstract class Future : IFuture, INotifyCompletion
Remarks

This data type is primarily used for bridging between synchronous or legacy asynchronous code into await-friendly form. It is NOT a replacement of Task in general.

Constructors

| Improve this Doc View Source

Future(Boolean)

Initializes a new Future.

Declaration
protected Future(bool runContinuationsAsynchronously = true)
Parameters
Type Name Description
Boolean runContinuationsAsynchronously

true to force continuations to run asynchronously; otherwise, false.

Properties

| Improve this Doc View Source

IsCompleted

Determines whether asynchronous operation referenced by this object is already completed.

Declaration
public abstract bool IsCompleted { get; }
Property Value
Type Description
Boolean

Methods

| Improve this Doc View Source

Complete()

Moves this Future into completed state and execute all attached continuations.

Declaration
protected void Complete()
| Improve this Doc View Source

OnCompleted(Action)

Attaches the callback that will be invoked on completion.

Declaration
public void OnCompleted(Action callback)
Parameters
Type Name Description
Action callback

The callback to be attached to the asynchronous operation which result is represented by this awaitable object.

Implements

IFuture
System.Runtime.CompilerServices.INotifyCompletion

Extension Methods

AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, CancellationToken)
ObjectExtensions.GetUserData<T>(T)
ObjectExtensions.IsOneOf<T>(T, IEnumerable<T>)
ObjectExtensions.IsOneOf<T>(T, T[])
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>)
ObjectExtensions.As<T>(T)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
ExpressionBuilder.Const<T>(T)

See Also

Futures and Promises
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX