task中能否嵌套Parallel.foreach语句?
业务场景是这样的:
一个采集程序需要采集歌手数据,包含6个字段(代表作、专辑、性别、出道日期、国籍、爱好)。这6个待采集的数据字段分布在6批不同的网址,每批网址有10w个(就是说一共需要采集60w网址)。
问题1:为了提高采集速度,我是否应该在程序中开启6个task去执行采集任务,然后在每个task中再使用Parallel.foreach 去采集对应的10w个网址?
问题2:为了提高采集速度,是否应该为这6个待采集字段建立6个数据表,以免多个线程同时写入一个表导致写入速度慢?
谢谢。
一个采集程序需要采集歌手数据,包含6个字段(代表作、专辑、性别、出道日期、国籍、爱好)。这6个待采集的数据字段分布在6批不同的网址,每批网址有10w个(就是说一共需要采集60w网址)。
问题1:为了提高采集速度,我是否应该在程序中开启6个task去执行采集任务,然后在每个task中再使用Parallel.foreach 去采集对应的10w个网址?
问题2:为了提高采集速度,是否应该为这6个待采集字段建立6个数据表,以免多个线程同时写入一个表导致写入速度慢?
谢谢。
...全文
相关推荐
Parallel.ForEach的卡死现象(线程操作问题C#源码实例)
例如,`Task`和`Task Parallel Library (TPL)`提供了一种更高级的方式来并行执行操作,它们通常比直接使用`Thread`类更安全、更易于管理。
Parallel.For,Parallel.ForEach,Parallel.ForEachAsync 使用实例
这些方法来自`System.Threading.Tasks.Parallel`命名空间,是.NET的Task Parallel Library (TPL)的一部分,它们简化了并发执行任务的方式,同时确保了线程安全
C#中的Task介绍
**C#中的Task介绍**Task类是.NET Framework 4.0引入的一个重要概念,它是用于异步编程的核心组件,属于任务并行库(TPL, Task Parallel Library)的一部分
Task Scheduling for Multi-core and Parallel Architectures 2017
"《Task Scheduling for Multi-core and Parallel Architectures 2017》由Quan Chen和Minyi Guo合著,是一本深入探讨多核和并
parallel-labs
**Parallel.For 和 Parallel.ForEach**:这些是TPL提供的两个并行循环结构,可以将循环体内的工作并行化。8.


