Mercurial > pub > ImplabNet
comparison Implab/Parallels/SyncContextDispatcher.cs @ 248:5cb4826c2c2a v3
Added awaiters to promises
Added static methods to Promise Resolve, Reject, All.
Updated promise helpers
| author | cin |
|---|---|
| date | Tue, 30 Jan 2018 01:37:17 +0300 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 247:fb70574741a1 | 248:5cb4826c2c2a |
|---|---|
| 1 using System; | |
| 2 using System.Threading; | |
| 3 | |
| 4 namespace Implab { | |
| 5 public class SyncContextDispatcher : IDispatcher { | |
| 6 SynchronizationContext m_context; | |
| 7 public SyncContextDispatcher(SynchronizationContext context) { | |
| 8 Safe.ArgumentNotNull(context, nameof(context)); | |
| 9 m_context = context; | |
| 10 } | |
| 11 | |
| 12 public void Enqueue(Action job) { | |
| 13 m_context.Post((o) => job(), null); | |
| 14 } | |
| 15 | |
| 16 public void Enqueue<T>(Action<T> job, T arg) { | |
| 17 m_context.Post((o) => job((T)o), arg); | |
| 18 } | |
| 19 } | |
| 20 } |
