我正在尝试在Parallel.ForEach中更新我的进度条,但没有任何成功。 进度条总是在80-90左右,并与整个过程一起冻结。 我做错了什么?是否因为UI线程忙于进度条而导致问题? 我会赞美你给我的任何建议。
这是我的代码:
Parallel.ForEach(test_Words, entry =>
{
Form1.fr.Invoke((Action)delegate { Form1.fr.progressBar1.Value++; });
switch (test_Type)
{
case "Definitions":
bagOfExercises.Add(Read(Definitions.get(entry.Value, entry.Key)));
break;
case "Examples":
bagOfExercises.Add(Read(Examples.get(entry.Value, entry.Key)).Replace(entry.Key, new string('_', entry.Key.Length)));
break;
}
});