public class ReplacementService : IReplacementService
{
public List<int> GetTeamReplacementWeight(int iTeamId)
{
IEnumerable<TeamReplacementGroup> groups = TeamReplacementGroup.GetTeamGroups(iTeamId);
List<int> weights= groups
.Select(group => group.GetWeight())
.AsParallel()
.ToList();
return weights;
}
}'GetWeight‘操作相对较小(对于1个对象,其执行时间不能超过1ms)。
如果集合大小在3-8个元素范围内,使用'AsParallel‘有意义吗?我肯定会将它用于超过100个元素的序列,但对于较小的…
我担心的是,线程创建和等待它们完成的开销,以及随后将结果组合到一个数组中,将占用更多的资源,而不是不同线程使用的可能好处。
你认为我的关心有价值吗?
欢迎任何想法!
发布于 2010-10-24 10:37:42
你的担心听起来是有道理的。你可以做一些测试/基准测试来确定?Here是微软的一个资源。
https://stackoverflow.com/questions/3766338
复制相似问题