Memory 数据集大小最佳实践-是否有任何一般规则?

Memory 数据集大小最佳实践-是否有任何一般规则?,memory,dataset,Memory,Dataset,我正在开发一个桌面应用程序,它将在提交到数据库之前生成几个内存中的数据集作为中介 很明显,我会尽量将它们的大小控制在最小,但是对于在“普通”机器上实现良好功能的阈值,有没有什么指导原则 谢谢你的帮助。没有“普通”机器。还有许多仍在使用的计算机,包括那些运行DOS/Win3.1/Win9x且安装的RAM小于64MB的计算机。 如果你没有为你的应用程序设置最小的硬件需求,至少要考虑你计划支持的最老的OS,并使用该操作系统的官方最小硬件要求来获得下限值。 通常,如果您的应用程序将消耗大量RAM,您可能

我正在开发一个桌面应用程序,它将在提交到数据库之前生成几个内存中的数据集作为中介

很明显,我会尽量将它们的大小控制在最小,但是对于在“普通”机器上实现良好功能的阈值,有没有什么指导原则

谢谢你的帮助。

没有“普通”机器。还有许多仍在使用的计算机,包括那些运行DOS/Win3.1/Win9x且安装的RAM小于64MB的计算机。 如果你没有为你的应用程序设置最小的硬件需求,至少要考虑你计划支持的最老的OS,并使用该操作系统的官方最小硬件要求来获得下限值。 通常,如果您的应用程序将消耗大量RAM,您可能希望让用户配置应用程序内存管理机制的上限

也就是说,如果您决定基于实时数据动态管理上限,那么您可以做很多事情

如果您正在开发windows应用程序,则可以使用WMI获取系统的,并根据该值设置限制(例如,最多使用总内存的5%)

在.NET中,如果您的数据结构很复杂,并且您发现很难评估所消耗的内存量,那么您可以使用
GC.GetTotalMemory(false)
,或者使用
System.Diagnostics.Process
对象,查询垃圾收集器中分配的内存量