应用程序从DVD开始这么慢

时间:2012-08-13 08:08:13

标签: c# winforms

我有一个大型数据库(大约3.5 GB)的应用程序,我需要从像DVD这样的只读文件系统运行它。所以我的程序在硬盘上运行良好,但从DVD开始这么慢。

我的问题是如何优化程序以便在DVD上快速运行?

2 个答案:

答案 0 :(得分:1)

你必须对你的应用程序进行分析,没有银弹使你的应用程序加载速度快三倍。分析,分析,查看导致延迟的数据

答案 1 :(得分:0)

这完全取决于您所说的数据库类型。我会假设它基于行。

如果您希望快速建立数据库,第一步可能是对数据库进行排序。这很关键,因为它可以使用二进制搜索非常快速地搜索特定行。

将3.5 Gb加载到ram中以便从DVD中搜索所需的时间几乎与翻录DVD一样长,这就是为什么你的程序启动速度慢的原因。考虑制作一个指向某些行的位置的索引,例如字典中每个字母开头的页码。然后,您只需加载数据库的一小部分即可找到所需的行。然后,按照要求的顺序加载部分,慢慢地在RAM中建立字典(即,如果你搜索某些内容,首先加载该部分)。

特别是对于DVD来说,没有太多可以让它加载更快。考虑流式压缩类型(可能是GZip,C#本身支持这种类型),以便您更快地提取数据。

同样,这完全取决于你正在做什么,这些只是一般性的建议。