是否清除和替换比循环检查所有记录更有效?

时间:2010-04-22 04:10:19

标签: c# mysql list

我有一个C#List,它是从数据库中填充的。到目前为止它只有1400条记录,但我希望它会增长很多..我经常检查整个列表中的新数据..我是什么我试图找出这个问题,只是简单地清除List并从表中重新加载所有数据,或者检查每个记录的速度更快......

Intuition告诉我转储和加载方法会更快,但我想我应该先检查...

5 个答案:

答案 0 :(得分:1)

你肯定应该转储和重装。我的建议完全基于我(可能是无根据的)对你的代码检查新数据的恐惧。

答案 1 :(得分:1)

如果我的理解是正确的,你无论如何都必须从MySql加载列表,并且非常内存列表是最新的,对吗?那么你提到的唯一问题是列表的内存管理。

好吧,通常我会首先尝试分析不同的行为,看看哪种行为更好。

但正如您所述,我认为清晰且重新创建应该比系统检查和更新更快。

答案 2 :(得分:0)

取决于负载的缓慢程度。我说在内存中访问内容总是比从数据库加载更快。但是,您需要自己进行计算。

请记住,如果没有数字,请不要优化以备份您。

答案 3 :(得分:0)

如果数据库每小时没有被点击几次,那么肯定会从数据库重新加载数据。将尽可能多的工作卸载到数据库,因为它旨在充分利用系统资源。

答案 4 :(得分:0)

在数据库中添加名为“InsertedTime”的列。每隔一段时间使用InsertedTime> ListCreatedTime(应用程序中的变量)更新这些行

这假设您的数据库数据未被删除

如果要处理更新和删除等数据库更改。您可以更好地在数据库中设置标志。稍后当您更新列表时,您可以从应用中删除记录。

但是无论如何都要对您的转储和加载方法进行分析,并将其与此进行比较,以了解哪种方法更快。