【发布时间】:2010-06-23 23:08:04
【问题描述】:
我对 C# 编程有点陌生,需要一些关于如何解决问题的建议。我需要处理存储在 SQL Server 数据库中的数万条记录,并且处理速度应该尽可能快。
为了最大限度地提高性能,我在应用程序启动时在后台线程上从数据库中获取行,因为它需要在开始处理之前等待一些用户输入。这种方法节省了整个过程 20% 的时间,但在内存占用方面非常消耗资源(该过程占用 200MB 的 RAM,我估计数据库行的原始数据不到 10MB)。
我正在使用一个类,其成员存储数据库列中的数据,并使用 ArrayList 来存储行。
是否有另一种方法将数据存储在内存中以最小化消耗的内存?
【问题讨论】:
-
我希望我们谈论的是一些非常复杂的处理......否则存储过程(带有用于您的用户输入的参数)(或类似的)会是处理您的数据的更合适的机制吗?处理存储的数据是 SQL Server 非常擅长的。
-
只是为了让事情更清楚:该应用程序是一个生物指纹识别系统。在生物特征从某人那里收集手指模板的同时,在数据库中获取存储的手指模板可以使整个识别过程更快。
标签: c# memory-management