作者leicheong (睡魔)
看板C_Sharp
标题Re: [问题] 如何得知各个type可储存大小的极限?
时间Wed Sep 26 17:15:21 2007
※ 引述《phe (hmmm)》之铭言:
: 请问各位....我有一个大约400MB的档案, 想把他一次读进来
: StreamReader sr = new StreamReader("file");
: StringBuilder sb = new StringBuilder();
: string buffer;
: while((buffer = sr.ReadLine() != null)
: {
: sb.Append(buffer);
: }
: 因为我的记忆体有1.25G, 所以依据我的想法这样应该是可以读完才对
: 但是程式会在执行到一半时就丢出OutOfMemoryException,
: 可是我检查windows工作管理员发现可用的实体记忆体还有400多
: 请问这是为什麽?
: (当然我也没一定非要用这方法写, 只是纯粹很好奇位啥记忆体没用完就会exception产生)
这个嘛... 你只能为一个process取得最大的"连续的"记忆体.
如果有一个process占用的记忆体区域横空栏在主记忆体的中间, 你是可能怎样
也拿不到这样大的记忆区块啦...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.73.76.102