我試圖將大量的股票市場報價數據存儲到變量中,以便在內存中進行查詢。我需要能夠快速找出股票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