gpt4 book ai didi

.net - 在 .NET3.5 中优化独立的 foreach 迭代

转载 作者:行者123 更新时间:2023-12-03 17:03:27 25 4
gpt4 key购买 nike

假设我有

foreach(int x in xs[]) // xs is an array of int
{
x++;
}

每次通过foreach都是独立的。有没有一种快速的方法来指示 CLR 在单独的线程上执行每个操作或通过 native 并行化来加速它?

也许它已经知道要这样做了。

我知道你我可以创建线程并启动它们,但如果我可以设置一个属性或标志来为我处理它,那就更好了。

我的实际代码更复杂,但通过 foreach 的每次迭代在迭代之间也没有影响。

有点像

[parallelize maxThreads=5]
foreach(int x in xs[]) // xs is an array of int
{
x++;
}

最佳答案

你可以试试 Parallel.For来自任务并行库。如果您获得正确的粒度,这可能会非常有效。有关详细信息,请参阅以下文章:

优化多核机器的托管代码
http://msdn.microsoft.com/en-us/magazine/cc163340.aspx

.NET 3.5 SP1 的任务并行库 can be downloaded from this page .这是一个direct link.

关于.net - 在 .NET3.5 中优化独立的 foreach 迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1528643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com