1
1
首先,停止用线程来思考。在软件开发的这一点上,线程是一个实现细节。我建议采用最高级别的解决方案。 立即想到的两个是反应式扩展(Rx)和TPL数据流。由于您的问题中没有太多上下文,很难说Rx与您的解决方案的集成有多容易。TPL数据流提供了一个简单的FIFO缓冲区,您可以这样使用:
默认情况下,数据流块在线程池上执行,并将其并发性限制为一次一个,所以这就是您所需要的。 要将工作排队到块:
|
2
0
否,您无法在Windows运行时应用程序中获取工作线程调度程序。在.NET for Desktop中,有一个Dispatcher类,用于管理线程的工作项队列。但在Windows运行时中,只有UI线程具有名为CoreDatcher的分派器。 将工作项提交到后台线程池。可以使用Windows.System.Threading.ThreadPool.RunAsync方法。 Using the thread pool in Windows Runtime apps 要按顺序运行工作项,可以使用await关键字。 例如:
或使用Task类
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |