Mercurial > pub > ImplabNet
view Implab/Parallels/ThreadPoolDispatcher.cs @ 262:f1696cdc3d7a v3 v3.0.8
Added IInitializable.Initialize() overload
Added IRunnable.Start(), IRunnable.Start() overloads
Fixed cancellation of the current operation when Stop() is called
More tests
author | cin |
---|---|
date | Mon, 16 Apr 2018 02:12:39 +0300 |
parents | 5cb4826c2c2a |
children |
line wrap: on
line source
using System; using System.Threading; namespace Implab.Parallels { public class ThreadPoolDispatcher : IDispatcher { public static ThreadPoolDispatcher Instance { get; private set; } = new ThreadPoolDispatcher(); private ThreadPoolDispatcher() { } public void Enqueue(Action job) { ThreadPool.QueueUserWorkItem((o) => job(), null); } public void Enqueue<T>(Action<T> job, T arg) { ThreadPool.QueueUserWorkItem((o) => job((T)o), arg); } } }