Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用c在多个线程中分配读取excel文件任务或进程#_C#_Excel_Multithreading - Fatal编程技术网

C# 如何使用c在多个线程中分配读取excel文件任务或进程#

C# 如何使用c在多个线程中分配读取excel文件任务或进程#,c#,excel,multithreading,C#,Excel,Multithreading,我想通过使用多线程来读取excel文件(超过2个excel文件和多个工作表),并且我想在这些多线程中分配读取过程。您的意思是: public void StartFileLoading(string[] filenames) { Task.WaitAll(filenames.Select(fn => Task.Run(() => ReadExcelFile(fn))).ToArray()); } 这将为每个要加载的文件创建一个任务,然后等待其完成(如果您对结果不感兴趣,则不

我想通过使用多线程来读取excel文件(超过2个excel文件和多个工作表),并且我想在这些多线程中分配读取过程。

您的意思是:

public void StartFileLoading(string[] filenames)
{
    Task.WaitAll(filenames.Select(fn => Task.Run(() => ReadExcelFile(fn))).ToArray());
}
这将为每个要加载的文件创建一个
任务
,然后等待其完成(如果您对结果不感兴趣,则不必执行该任务)。
您可能需要添加一些错误或结果处理


如果您想更具体地了解如何创建任务/线程,可以阅读以获取任务的替代方案。请运行。但请确保框架在大多数情况下都是自己最了解情况的。

到目前为止,您尝试了什么?你所说的“读取excel文件”到底是什么意思?除非你的硬件能够真正支持并行读取,否则你将得不到多少。你有没有搜过磁盘?从特定位置读取excel文件,这部分我已经做过了,但我希望读取过程应该由多个线程完成。是的,我也在努力实现这一目标,但没有成功。我不确定这一点@oleskii@Rene:一个用于读取excel文件的线程。我已经创建了4个线程,然后4个线程应该可以读取4个excel文件。以这种方式我想要