优化:局部变量还是全局变量?

时间:2013-01-17 13:11:49

标签: c# linq silverlight optimization

我正在开发一个silverlight应用程序(C#),其中我使用自定义控件Square和以下全局变量。

Square[,] arrSquare = new Square[customRows,customColumns]
List<Square> lstSelection;
List<Square> lstEditable;
List<Square> lstSetSquares;
List<Square> lstCancelled;

列表一次又一次用于更新目的。 只有在我必须更新上述隔离列表时才会出现arrSquare

我脑子里有两种选择:

  1. 遵循我目前的全局变量架构而不经常使用我的主阵列arrSquare

  2. 在方法中使用LINQ(在arrSquare转换为本地声明的List s),以便在方法完成时销毁本地对象?

  3. 如果有更好的方法,请提出建议。 请注意,我将要处理的数据将是巨大的。

1 个答案:

答案 0 :(得分:2)

问题不应该是关于全局变量和局部变量的问题,而是应该用“保存计算的缓存副本或者根据需要在现场生成它们更好吗?”。

由于您的数据集非常庞大,因此明显按需执行所有计算是不行的,因此该问题很容易回答。