使用BackgroundWorker类时,System.OutOfMemoryException即将发生

时间:2015-03-13 12:00:41

标签: c# datagridview out-of-memory backgroundworker

我正在使用后台工作程序来更新datagridview控件中的行。当我填充行时,我在16,000,000行之后得到System.OutOfMemoryException。它为什么要来? 什么时候出现这种例外?

有谁能建议我如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果需要处理160万行,则需要批量处理。你不能一次将它们放在内存中。特别是使用用户控件,这会增加显示这些行的开销。

查看可以适合您的RAM的数量。不要将它们放在用户控件中。处理它们,无论您的数据库可以处理的最佳大小(根据我的经验,批量/批次中的1K到10K行)。