0

我正在从数据库中获取超过 1000 万条记录并写入文本文件。完成此操作需要数小时的时间。这里有使用 TPL 功能的选项吗?

如果有人能让我开始用 TPL 实现它,那就太好了。

using (FileStream fStream = new FileStream("d:\\file.txt", FileMode.OpenOrCreate,     FileAccess.ReadWrite))
{
    BufferedStream bStream = new BufferedStream(fStream);
    TextWriter writer = new StreamWriter(bStream);
    for (int i = 0; i < 100000000; i++)
    {
        writer.WriteLine(i);
    }
    bStream.Flush();
    writer.Flush(); // empty buffer;
    fStream.Flush();
}
4

1 回答 1

0

代码示例只是将整数写入文件,不访问数据库。如果这不快的话,你的硬件就有问题了。您最可能的瓶颈是从数据库中获取数据。慢查询或慢连接。如果您指定数据库类型并显示我们可以放大的查询...

于 2012-09-17T09:37:06.370 回答