我试图让我的C#应用程序尽可能快地运行。
我无权访问应用程序的源代码,但允许使用C#对其进行扩展,以便我这样做。我不知道这是否有所不同。
此外,这必须每秒运行十次以上。性能对我来说非常重要,所以我决定使用Parallel.ForEach()
。
如何定义订单(我不是在谈论数组的原始订单)所以事情不会变得毛茸茸?
这是我的代码:
string[] MyThings = {}; // There are 300 names in this array.
System.Threading.Tasks.Parallel.ForEach(MyThings, Thing => {
var LastStatus = AppLib.FetchNode(Thing);
// First step. AppLib.FetchNode() sends my Node.js server a request,
// Node.js accesses MySQL and returns a response.
// Second step. I access application specific data here using LastStatus value,
// but it shouldn't run before the first step is finished.
var SendStatus = AppLib.SendNode(data1, data2, data3);
// Third and last step. SendNode() sends some data to my Node.js server,
// but it shouldn't run before the second step is finished.
});