作者cole945 (躂躂..)
看板C_Sharp
标题Re: [问题] list memory usage
时间Thu Jun 7 02:20:47 2007
※ 引述《huggie (huggie)》之铭言:
: 我开一个 tab-delimited file
: 用 list<list<string>> 来装
: 38 MB 的档案一开起来程式就吃掉 500 多 MB
: 这样正常吗?
: 也许我考虑改用 array 装就好了...
似乎不太正常@.@a
你可以用 Memroy Profile 来检查是什麽部份用了这麽大量的记忆体..
微软自己有给免费的 CLR Profile (含source)
CLR Profiler for the .NET Framework 2.0
http://www.microsoft.com/downloads/details.aspx?
FamilyID=a362781c-3870-43be-8926-862b40aa0cd0&displaylang=en
CLR Profiler (v1.1)
http://www.microsoft.com/downloads/details.aspx?
familyid=86ce6052-d7f4-4aeb-9b7a-94635beebdda&displaylang=en
用他去执行你自己的程式( Start Application)
然後按 Show Heap now , 他就会把你整个程式依物件的参照关系画成记忆体使用图表~
我自己测出来的结果..用List<string>和用String[]的大小其实是差不多的..
不过会比原文件略大. 又因为String用utf16,所以如果你的原文件是用ansi编码,
而且使用ascii字元居多的话, 文件大小可能会变成原的两倍大@.@|
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.139.138.3