我试图将大量的股票市场报价数据存储到变量中,以便在内存中进行查询。我需要能够快速找出股票ID的最新市场数据,并查询特定股票的特定历史长度。将大量库存数据存储在内存中的最佳方法(可变)
例如,我可能会每隔几秒钟收到库存号5342(始终为数字)的数据......我最初的想法是构建一个SortedDictionary的数组,其中SortedDictionary键是引号的DateTime,其值是我的市场数据的自定义结构。然后外阵列将是股票的ID,所以,我可以打电话:
RecentPrice = PriceData[StockID].Values.Last();
或者,我可以通过股票的SortedDictionary向后迭代,直到我打比我在寻找的时间范围较老的关键。
但是我觉得必须有一个更好的(更有效的)方法。有任何想法吗?
编辑:而不是一个SortedDictionaries数组... SortedDictionaries词典可能会更好。 例如:
public static Dictionary<int, SortedDictionary<DateTime, StockData>> PriceData =
new Dictionary<int, SortedDictionary<DateTime, StockData>>();
则:
RecentPrice = PriceData[StockID].Values.Last();
谢谢!
完美,谢谢! – Harry 2012-02-28 20:20:29