Mercurial > pub > ImplabNet
annotate Implab/Parallels/ThreadPoolDispatcher.cs @ 255:b00441e04738 v3
Adde workaround to the behaviour of the logical operations stack in conjuction
with async/await methods
author | cin |
---|---|
date | Wed, 04 Apr 2018 15:38:48 +0300 |
parents | 5cb4826c2c2a |
children |
rev | line source |
---|---|
248 | 1 using System; |
2 using System.Threading; | |
3 | |
4 namespace Implab.Parallels { | |
5 public class ThreadPoolDispatcher : IDispatcher { | |
6 | |
7 public static ThreadPoolDispatcher Instance { get; private set; } = new ThreadPoolDispatcher(); | |
8 | |
9 private ThreadPoolDispatcher() { | |
10 } | |
11 | |
12 public void Enqueue(Action job) { | |
13 ThreadPool.QueueUserWorkItem((o) => job(), null); | |
14 } | |
15 | |
16 public void Enqueue<T>(Action<T> job, T arg) { | |
17 ThreadPool.QueueUserWorkItem((o) => job((T)o), arg); | |
18 } | |
19 } | |
20 } |