如果我有一个由两个小方法组成的大方法:
public int LargeMethod()
{
int result = 0;
result += SmallMethodA();
result += SmallMethodB();
}
这两个小方法都会阻塞我的程序至少 2 秒,我相信如果我让这两个方法在它们自己的线程中运行,性能确实会更好。
你能推荐一个编程模型吗?
最佳答案
如果您使用的是 .NET 4,则可以使用任务
public int LargeMethod()
{
int result = 0;
Task<int> t1 = new Task<int>(SmallMethodA);
Task<int> t2 = new Task<int>(SmallMethodB);
t1.Start();
t2.Start();
result += t1.Result;
result += t2.Result;
return result;
}
关于C# 将较大的方法分成两个线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4303605/