C# Matchcollection并行。Foreach
我正在尝试为matchcollection创建一个Parallel.Foreach循环。 在我造的刮刀里。 我只是想知道应该把什么放在平行线上C# Matchcollection并行。Foreach,c#,multithreading,parallel-processing,C#,Multithreading,Parallel Processing,我正在尝试为matchcollection创建一个Parallel.Foreach循环。 在我造的刮刀里。 我只是想知道应该把什么放在平行线上 MatchCollection m = Regex.Matches(htmlcon, matchlink, RegexOptions.Singleline); Parallel.ForEach(WHAT DO I PUT HERE? => {
MatchCollection m = Regex.Matches(htmlcon, matchlink, RegexOptions.Singleline);
Parallel.ForEach(WHAT DO I PUT HERE? =>
{
Get(match.Groups[1].Value, false);
Match fname = Regex.Match(htmlcon, @"<span class=""given-name"(.*?)</span>", RegexOptions.Singleline);
Match lname = Regex.Match(htmlcon, @"span class=""family-name"">(.*?)</span>", RegexOptions.Singleline);
firstname = fname.Groups[1].Value;
lastname = lname.Groups[1].Value;
sw.WriteLine(firstname + "," + lastname);
sw.Flush();
}):
MatchCollection m=Regex.Matches(htmlcon、matchlink、RegexOptions.Singleline);
Parallel.ForEach(我在这里放什么?=>
{
获取(match.Groups[1]。值,false);
Match fname=Regex.Match(htmlcon,@)
但是没有运气
提前感谢!:)这是因为
并行。ForEach
需要一个通用的IEnumerable
,而MatchCollection
只实现非通用的
试试这个:
Parallel.ForEach(
m.OfType<Match>(),
(match) =>
{
);
Parallel.ForEach(
m、 of type(),
(匹配)=>
{
);
Parallel.ForEach(
m.OfType<Match>(),
(match) =>
{
);