【发布时间】:2012-11-13 08:00:38
【问题描述】:
我有一个后台工作者,它为列表项调用并行线程
doWork()
{
Parallel.foreach(list1, a=>
{
while(true)
{
//do some operations
}
});
Parallel.foreach(list2, b=>
{
while(true)
{
//do some operations
}
});
}
如果我想同时运行这两个列表,我应该创建另一个线程作为它们的父线程还是其他方式?我分别获取这两个列表,因此不能将它们组合起来。而且我在它们两个内部都运行无限循环。
【问题讨论】:
-
创建两个任务然后
Task.WaitAll -
Action<object> action = (object obj) => { //put the parallel.foreach here };和第二个parallel.foreach的另一个操作,然后运行任务并调用Task.WaitAllrt??
标签: c# .net multithreading backgroundworker task-parallel-library