C# 如何在parallel.invoke中动态添加方法
下面给出的是示例代码C# 如何在parallel.invoke中动态添加方法,c#,parallel.invoke,C#,Parallel.invoke,下面给出的是示例代码 string[] str = new string[10]; str[0] = "A"; str[1] = "B"; .... and so on. Parallel.Invoke(() => { foreach(string temp in str) {
string[] str = new string[10];
str[0] = "A";
str[1] = "B";
.... and so on.
Parallel.Invoke(() =>
{
foreach(string temp in str)
{
MainFunc(temp);
}
});
我想动态调用“MainFunc”方法10次。因此,我将foreach循环用于。但是,该方法只运行一次。请帮忙。提前感谢:)您对并行的用法。调用不正确。此方法接受一个或多个
操作
s并并行执行它们。您只发送一个操作,因此10次迭代将一次接一次地执行。但是,MainFunc
应该运行10次(基于字符串数组的长度)
要并行执行上述逻辑,请使用Parallel.ForEach()
:
执行提供的每个操作,可能是并行的。在这种情况下,您只有一个操作,因此它只执行一次
如果您正在寻找对每个str
的并行调用,请使用此选项
Parallel.ForEach(str, (temp) =>
{
MainFunc(temp);
}
使用
Parallel.ForEach()
。谢谢你,伙计。它成功了。:)
Parallel.ForEach(str, (temp) =>
{
MainFunc(temp);
}