单线程同步上下文

时间:2014-07-31 15:22:26

标签: c# async-await synchronizationcontext

我的服务器中有一个异步方法,我想在专用线程上运行(调用者不等待它,只是调度),而不是来自ThreadPool。我找到了一些单线程SynchronizationContext的实现,但它们似乎没有经过测试,我想使用更稳定的实现。

我找到了Nito AsyncEx的AsyncContext,但我还没有弄清楚它是否可以在整个应用程序生命周期内在一个专用线程上运行。

有谁知道AsyncContext是否符合我的要求?或者,您是否知道单线程SynchronizationContext的测试和稳定实现?

1 个答案:

答案 0 :(得分:3)

您不需要同步上下文 - 有一个任务调度程序可以完全满足您的需求 - ConcurrentExclusiveSchedulerPair

基本上,您将把所有任务安排到配对中的独占调度程序,它将在一个单独的线程中按顺序处理。