Mercurial > pub > ImplabNet
view Implab/Components/IRunnable.cs @ 207:558f34b2fb50 v2
added Safe.DispatchEvent() a legacy equivalent for '?.Invoke()'
added Safe.Dispose(IEnumerable)
added PromiseExtensions.CancellationPoint to add a cancellation point to the chain of promises
added IPromise<T> PromiseExtensions.Then<T>(this IPromise<T> that, Action<T> success) overloads
added PromiseExtensions.Error() overloads to handle a error or(and) a cancellation
author | cin |
---|---|
date | Wed, 09 Nov 2016 12:03:22 +0300 |
parents | 8200ab154c8a |
children | 7d07503621fe |
line wrap: on
line source
using System; namespace Implab.Components { public interface IRunnable { /// <summary> /// Starts this instance. /// </summary> IPromise Start(); /// <summary> /// Stops this instance. After the instance is stopped it can't be started again, stopping should be treated as gracefull and async dispose. /// </summary> IPromise Stop(); ExecutionState State { get; } event EventHandler<StateChangeEventArgs> StateChanged; Exception LastError { get; } } }