Mercurial > pub > ImplabNet
view Implab/Parallels/SyncContextDispatcher.cs @ 281:e0916ddc9950 v3 tip
code cleanup and refactoring
author | cin |
---|---|
date | Fri, 01 Jun 2018 21:35:24 +0300 |
parents | 5cb4826c2c2a |
children |
line wrap: on
line source
using System; using System.Threading; namespace Implab { public class SyncContextDispatcher : IDispatcher { SynchronizationContext m_context; public SyncContextDispatcher(SynchronizationContext context) { Safe.ArgumentNotNull(context, nameof(context)); m_context = context; } public void Enqueue(Action job) { m_context.Post((o) => job(), null); } public void Enqueue<T>(Action<T> job, T arg) { m_context.Post((o) => job((T)o), arg); } } }