使用TPL或Async生成大型文本文件的最佳方法

时间:2014-02-16 22:30:58

标签: c# io task-parallel-library

我有一张约500K记录的表 我需要将数据导出到文本文件中。

最好的方法是什么? .NET任务并行或异步是否有帮助?
我想使用Parallel来创建多个文件,然后组合在一起。

那是好方法吗?非常感谢您的建议。

2 个答案:

答案 0 :(得分:7)

如果您需要将其写入文件并且数据在内存中,并行化将无关紧要,因为瓶颈将是磁盘。只需使用StreamWriter按顺序写入磁盘。

如果您需要获取或计算数据,那么您可以尝试并行计算。

在任何情况下,并行化都不会提高磁盘写入性能。实际上,如果您尝试将其并行化,则可能会使性能下降。

答案 1 :(得分:0)

您可以使用FileStream类在文件周围公开Stream,支持同步和异步读写操作。