我的服务器中有一个异步方法,我希望始终在专用线程上运行(调用者不等待它,只是调度),而不是从线程池运行。我找到了一些单线程 SynchronizationContext 的实现,但它们似乎未经测试,我想使用更稳定的实现。
我找到了 Nito AsyncEx 的 AsyncContext ,但我无法弄清楚它是否可以在整个应用程序生命周期中在单个专用线程上运行。
有谁知道 AsyncContext 是否可以满足我的要求?或者,您知道单线程 SynchronizationContext 的经过测试且稳定的实现吗?
最佳答案
您不需要同步上下文 - 有一个任务调度程序可以完全满足您的需要 - ConcurrentExclusiveSchedulerPair
。
基本上,您会将所有任务调度到该对中的独占调度程序,并且它将在单独的线程中按顺序处理。
关于c# - 单线程同步上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25062868/