我目前正在尝试通过使用 Tasks 来利用 .Net 4.0 中的并行线程来进行一些性能优化。
我已经创建了三个方法来返回一些对象的集合或只是一个对象。让我们称它们为 MethodA、MethodB 和 MethodC。
在 MethodB 内部,我有一个长时间运行的延迟 - 大约 5-7 秒。
var person = new Person();
person.A = Task.Factory.StartNew(() => Mystatic.MethodA()).Result;
person.B = Task.Factory.StartNew(() => Mystatic.MethodB()).Result;
person.C = Task.Factory.StartNew(() => Mystatic.MethodC()).Result;
现在我期望在 person.B 之前设置/填充 person.A 和 person.C 属性,但是我很难测试/调试它来验证我的假设。
我已经在所有三个属性上添加了一个并行监视,但是通过调试对我来说并不能说明问题。
如果我正在填充一个主对象,这也是我优化对方法的多个调用的正确方法吗?
就我而言,我有 5-7 种不同的方法来收集数据,我想让它们并行,因为其中一些相对耗时。