gpt4 book ai didi

multithreading - C# TPL 任务 - 一次有多少

转载 作者:行者123 更新时间:2023-12-04 06:45:57 25 4
gpt4 key购买 nike

我正在学习如何使用 TPL 来解析我拥有的应用程序。该应用程序处理 ZIP 文件,提取其中保存的所有文件并将内容导入数据库。在给定时间可能有数千个 zip 文件等待处理。

我是否正确为每个 ZIP 文件启动了一个单独的任务,或者这是使用 TPL 的一种低效方式?

谢谢。

最佳答案

这似乎是一个更适合使用 ThreadPool 而不是 TPL 管理的工作线程(每个文件的单独线程)的问题。当您可以对单个数据项进行分而治之但您的 zip 文件被单独处理时,TPL 非常棒。

磁盘 I/O 将成为您的瓶颈,因此我认为您需要限制同时运行的作业数量。用工作线程管理这个很简单,但我不确定你对并行的(如果不是)有多少控制(如果不是),就并行性如何同时进行而言,这可能会阻塞你的进程并实际上减慢它的速度。

关于multithreading - C# TPL 任务 - 一次有多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4452230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com