計劃有一個數據結構來將臨時二進制數據存儲在內存中進行分析。哪種數據結構適合臨時大二進制數據存儲?
數據的最大尺寸約爲10MB
。
數據將一次添加在末尾408 bytes
。
沒有搜索,檢索對這些臨時二進制數據的操作。
數據將被清除,存儲將被重新用於下一次分析。
問題:
- 其結構有利於這一目的?
byte[10MB], List<bytes>(10MB), List<MyStruct>(24000), or ...?
- 如何快速清除數據(不是List.Clear(),只需將該值設置爲0)用於List或數組?
- 如果我說
List.Clear(),
這個List
內存將縮小或列表的容量(存儲)仍然存在,當我打電話List.AddRange()
的Clear()?
- List.Insert(後無內存分配)會令大名單或者它只是取代現有的項目?
我們在談論什麼樣的「檢索操作」?處理408個字節的單個塊? – 2010-07-30 17:53:34
表示從數據中間取出數據 – 5YrsLaterDBA 2010-07-30 17:55:06
但您打算怎麼做?你能描述一下你要做什麼樣的「分析」? – 2010-07-30 18:00:28