using System; using System.Threading; using System.Threading.Tasks; namespace ComposableAsync { /// /// Simplified version of that can be converted /// to a using the ToFullDispatcher extension method /// public interface IBasicDispatcher { /// /// Clone dispatcher /// /// IBasicDispatcher Clone(); /// /// Enqueue the function and return a task corresponding /// to the execution of the task /// /// /// /// /// /// Task Enqueue(Func action, CancellationToken cancellationToken); /// /// Enqueue the action and return a task corresponding /// to the execution of the task /// /// /// /// Task Enqueue(Action action, CancellationToken cancellationToken); /// /// Enqueue the task and return a task corresponding /// to the execution of the task /// /// /// /// Task Enqueue(Func action, CancellationToken cancellationToken); /// /// Enqueue the task and return a task corresponding /// to the execution of the original task /// /// /// /// /// Task Enqueue(Func> action, CancellationToken cancellationToken); } }